Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Прокрутка страницы (https://javascript.ru/forum/misc/84-prokrutka-stranicy.html)

Phoenix 21.12.2007 18:09

Прокрутка страницы
 
Доброго времени суток...

У меня возникла проблема с прокруткой страницы. А точнее, с определением процента прокрутки или в пикселях(что лучше)...

Как можно определить, насколько страница была прокручена, через СкроллБар.

Рылся в интернете, нашел как программно прокручивать, но как определить насколько, не нашел :(

Илья Кантор 22.12.2007 22:42

Текущая координата - сравнить с высотой страницы общей ?

Phoenix 24.12.2007 20:51

Нет, мне просто текущую координату надо...

У меня есть div, который должен появляться в центре окна... я сделал(но там происходит высота страницы/2).

А мне надо определить насколько смещено окно, от первоначального положения... Т.е. на сколько пикселей был прокручен скрол бар...

Istamendil 18.02.2008 22:30

var scroll=(navigator.userAgent.indexOf('Firefox')!=-1?scrollY:document.body.scrollTop);

Phoenix 18.02.2008 23:29

Я уже давно решил эту проблему....

вот как добился

//ширина клиенской области
function getClientWidth(){
return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth :document.body.clientWidth;
}

//высота клиентской области
function getClientHeight(){
return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeigh t:document.body.clientHeight;
}

//смешение по высоте
function getClientSTop(){
return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop)
}

//смещение по горизонтали
function getClientSLeft(){
return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

Semen 30.10.2010 00:48

Цитата:

Сообщение от Phoenix (Сообщение 1308)
Я уже давно решил эту проблему....
//смешение по высоте
function getClientSTop(){
return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop)
}
}

Почему может неработать этот скрипт? Выдает значение 0
Перепробовал кучу вариантов получения смещения по высоте - ничего не работает... :help:

monolithed 30.10.2010 10:22

http://javascript.ru/blog/Andrej-Par...enta-elementov
http://javascript.ru/tutorial/dom/modify

Semen 30.10.2010 14:30

Благодарю за полезные ссылки. Прямого кода (скопировал/вставил/работает) не нашел но благодаря информации удалось выяснить ошибку и исправить ее :)


Часовой пояс GMT +3, время: 10:34.