Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Pozycja scrolla np w Firefox
Forum PHP.pl > Forum > Przedszkole
pacior
Jak w temacie.

Mam funkcje

function onmouseoverKonto(text, e){
alert(e.questionmark.gif?) // co wpisać aby mieć pozycję scrolla
alert(e.clientY) // pozycja myszki w Y
}
l0ud
Kod
alert(document.documentElement.scrollTop);
pacior
niestety zawsze zwraca 0 jak przesuwam ekran góra dół
paziek
w normalnych przeglądarkach masz window.pageYOffset
w IE masz document.lastChild.scrollTop

Niby ten przykład z IE działa też pod Operą i Firefoxem, ale trudno mi powiedzieć od których wersji i jak długo jest/będzie to wspierane - nie jest to standard W3C.
Safari np. nie obsługuje tej wartości.

Kod
var YOffset=(e.target)?window.pageYOffset+'px':document.lastChild.scrollTop+'px';

Możesz te +'px' pokasować, ja tego potrzebowałem do CSS.
No i e.target powinieneś zastąpić innym sposobem na wykrywanie czy mamy do czynienie z IE, czy też nie.
pacior
Jak by ktoś potrzebował pozycje kursora w różnych przeglądarkach do tego to mi było potrzebne

  1. function mousePosition(e)
  2. {
  3. var x, y;
  4.  
  5. if (!e) e = window.event;
  6. if (!e || (typeof(e.pageX) != 'number' && typeof(e.clientX) != 'number')) return [0, 0];
  7.  
  8. if (typeof(e.pageX) == 'number')
  9. {
  10. x = e.pageX;
  11. y = e.pageY;
  12. }
  13. else
  14. {
  15. x = e.clientX;
  16. y = e.clientY;
  17.  
  18. if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft))
  19. {
  20. x += document.documentElement.scrollLeft;
  21. y += document.documentElement.scrollTop;
  22. }
  23. else if (document.body && (document.body.scrollTop || document.body.scrollLeft))
  24. {
  25. x += document.body.scrollLeft;
  26. y += document.body.scrollTop;
  27. }
  28. }
  29.  
  30. return [x, y];
  31. }
.radex
Cytat(paziek @ 5.08.2008, 19:55:00 ) *
Niby ten przykład z IE działa też pod Operą i Firefoxem, ale trudno mi powiedzieć od których wersji i jak długo jest/będzie to wspierane - nie jest to standard W3C.
Safari np. nie obsługuje tej wartości.


Opera i Firefox prawdopodobnie będą to obsługiwać, dopóki IE będzie to obsługiwać i stare strony będą tego używały.
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.