Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js] dziwne wyswietlanie w IE
Forum PHP.pl > Forum > Po stronie przeglądarki
wojto
Witam,
Napotkalem na pewien problem pojawiajacy sie podczas korzystania z IE.
Mam taka strone http://www.budowle.pl/Poflirtuj_pl_blad.htm i problem w tym, ze jak sie przewinie strone troche do dolu i najedzie na obrazek "no photo brak zdjecia" w glownej czesci strony, to chmurka pokazuje sie troche wyzej, jesli przesuniemy strone bardziej do dolu i najedziemy na obrazek, to pokazuje sie jeszcze wyzej.
Plik skryptu js dostepny jest tutaj http://budowle.pl/Poflirtuj_pl_pliki/userInfo.js.

Ale najciekawsze w tym jest to, ze jak dodam na poczatku strony jakis komentarz, np.
Kod
<!-- poflirtuj.pl -->

to wszystko jest ok, a chmurki wyswietlaja sie tuz obok kursora, przyklad tutaj http://budowle.pl/Poflirtuj_pl_ok.htm :/

Moja wiedza dotyczaca js jest za mala, aby dojsc, co jest tego przyczyna.
Nie jest to jakis problem, bo zostawie z komentarzem na poczatku, ale chcialbym wiedziec o co w tym chodzi.

pzdr. wojto
FiDO
Cytat(wojto @ 2005-07-29 15:15:26)
Ale najciekawsze w tym jest to, ze jak dodam na poczatku strony jakis komentarz

Jesli IE ma cos przed DOCTYPE'm to przelacza sie w tryb Quirks (wiecej szczegółów na http://www.csscreator.com/css-forum/ftopic6534.html) co powoduje troche inne dzialanie skryptów niz w trybie zgodnosci ze standardami.
Aczkolwiek cos blizej ciezko jest mi powiedziec. Z ciekawosci sprawdzilem swoje dymki i okazalo sie, ze maja ta sama przypadlosc, tylko ze ja mam dokladnie odwrotnie.. bez niczego przed DOCTYPE'm nie dziala, a z prologiem XML smiga az milo. Jakbys rozwiazal problem to napisz co bylo powodem, ja narazie nie mam sie tym kiedy zajac, ale jak znajde rozwiazanie to sie podziele.


edit:
nie wytrzymalem jednak dlugo winksmiley.jpg
Sprawa rozchodzi sie o roznice w wykrywaniu przesuniecia dokumentu w zaleznosci od trybu IE (tryb zgodnosci ze standardami albo quirks), podobnie jak Ty sprawdzalem tylko document.body.scrollTop, a nalezy jeszcze sprawdzic (najpierw) document.documentElement.scrollTop. U mnie po poprawce wykrywanie przesuniecia wyglada wiec tak:
Kod
sx=(dE && dE.scrollLeft)?dE.scrollLeft:b.scrollLeft;
sy=(dE && dE.scrollTop)?dE.scrollTop:b.scrollTop;

gdzie dE to document.documentElement, a b to document.body
wojto
dzieki za odpowiedz, dostalem tez odpowiedz na webhelpie, analogiczna do twojej tylko troche krotsza:
Kod
sx=(document.documentElement||document.body).scrollLeft
FiDO
oo.. nie wiedzialem, ze tak mozna.. przyda sie winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.