[JavaScript] Mignięcie tekstu a opacity

HTML to podstawy w dziedzinie tworzenia stron WWW, Style CSS warto opanować, bowiem za ich pomocą można dostosować odpowiednio wygląd swojej witryny WWW. Zagłębiamy się dalej i udostępniamy w tym forum możliwość zadawania pytań o JavaScript.
ODPOWIEDZ
gorylek
Zaczyna działać
Zaczyna działać
Posty: 427
Rejestracja: śr gru 19, 2007 7:29 pm

[JavaScript] Mignięcie tekstu a opacity

Post autor: gorylek »

Witam,
mam drobny problem, zrobiłem mały efekt ładowania większej ilości tekstu (600 linijek lorem ipsum). Ot zabawy z Ajaxem jednak nie mogę czegośc zrozumie.

Kod: Zaznacz cały

function wczytaj(param)
{
    $('tresc').innerHTML = "<h1>Trwa ładowanie dokumentu...</h1>";
    var ajax = startAJAX();
    ajax.onreadystatechange=function()
    {
        if(ajax.readyState==4)
        {
            opacity(0);
            $('tresc').innerHTML = ajax.responseText;
            setTimeout("pokazTresc(0)",100);
        }
    }
    ajax.open("GET",param,true);
    ajax.send(null);
}
Na starcie zmieniam zawartość kontenera na "Trwa ładowanie dokumentu" a gdy jest odpowiedz z serwera, opacity (przezroczystość kontenera) zmieniam na 0, wczytuje tekst a następnie ustawiam stopniowe ujawnianie sie tekstu.

Niby wszystko super, wszystko fajnie ale mimo ustawienia zniknięcia elementu, jest moment kiedy nowy tekst się opjawi, następnie natychmiast zniknie a dopiero potem zacznie się pojawiac. Psuje to caly efekt.

a niby w IF kolejnosc jest dobra:

Kod: Zaznacz cały

opacity(0);
            $('tresc').innerHTML = ajax.responseText;
            setTimeout("pokazTresc(0)",100);
Tutaj daje funkcje opacity i pokaz tresc do ogladniecia:

Kod: Zaznacz cały

function pokazTresc(i)
{
    if(i<=100)
    {
        opacity(i);
        i++;
        var st = setTimeout("pokazTresc("+i+")",2);
    }
    else
    {
        opacity(100);
        clearTimeout(st);
    }
}

function opacity(i)
{
    $('tresc').style.opacity = i/100;
    $('tresc').style.filter="Alpha(Opacity=" + i + ")";
}
A tutaj jest przyklad jak to chodzi. W bocznym menu pierwsze 2 linki chodza z czego pierwszy ma za zadanie wlasnie wczytaj wieksza ilosc tekstu (link "Pierwszy wpis").

http://www.student-ii.pwszjar.edu.pl/~poltorak_dariusz/

Wszelkie sugestie mile widziane. Pozdrawiam i z gory dziekuje.
!ans
Nowy
Nowy
Posty: 131
Rejestracja: wt gru 11, 2007 9:59 pm
Lokalizacja: zza rogu

Re: [JavaScript] Mignięcie tekstu a opacity

Post autor: !ans »

U mnie wszystko jest tak jak powinno być :)
gorylek
Zaczyna działać
Zaczyna działać
Posty: 427
Rejestracja: śr gru 19, 2007 7:29 pm

Re: [JavaScript] Mignięcie tekstu a opacity

Post autor: gorylek »

Hmmm... jak patrze z domu to rzeczywiście :| tekst pisałem będąc na uczelni i korzystając z publicznego stanowiska. Tekst się pojawił, znikł a następnie powoli jak powinien się pojawiał. Z deka dziwne no ale skoro na wszystkich przeglądarkach u mnie chodzi to na razie to zostawię.

Jeszcze mnie tylko zastanawia jak zblokować funkcje przed ponownym wywołaniem, jak się kliknie parę razy na link to zawartość po prostu pojawia się i znika :D No ale to już szkopuł. EDIT// Szkopuł rozwiązany, temat do zamknięcia :D Jeszcze niech ktoś rzuci okiem w ten na temat pozycjonowania i będe heapy.
ODPOWIEDZ