JavaScript - przewinięcie do środka strony


(system) #1

Witajcie,

mam dużą stronę (dużą w sensie szerokości i wysokości), i mam prosty skrypt, za pomocą którego strona automatycznie wczytuje się na środku:

function ctr() {

	window.scrollTo(1024,768)

}

Jednak to rozwiązanie działa tylko przy rozdzielczości 1024x768. Jak mógłbym to zmodyfikować by niezależnie od rozdzielczości, przewijało mi stronę tak, by po odświeżeniu ekran monitora znajdował się dokładnie w jej centrum?

Dziękuję za sugestie.


(Wszerad91) #2

Skrypt przewija stronę do współrzędnych X i Y. Więc pod X i Y musisz jakoś wygenerować współrzędne połowy wysokości i szerokości.

Dla X będzie to pewnie window.width a dla Y window.height, teraz dzielimy to na połowę bo chodzi o środek. Nie wiem jak do końca działa funkcja scrollTo ale prawdopodobnie ustawia w tych współrzędnych lewy, górny róg więc trzeba wziąć pod uwagę rozmiar okna przeglądarki.

function ctr() {

var x = (window.width-screen.width)/2;

var y = (window.height-screen.height)/2;

window.scrollTo(x,y)

}

Chyba będzie działać...


(system) #3

Dziękuję za pomoc, wypracowałem na tej podstawie trochę inne rozwiązanie:

function ctr(){

var width = screen.width/2.5;

var height = screen.height/1.5;

window.scrollTo(width,height);}

Miejmy nadzieję, że będzie działać też na innych rozdzielczościach :wink:

Pozdrawiam.