Как я могу узнать, какой процент вертикальной полосы прокрутки пользователь переместил через в какую-либо данную точку?
Достаточно легко захватить onscroll
событие для увольнения, когда пользователь прокручивает страницу вниз, но как я узнаю в том событии, как далеко они прокрутили? В этом случае процент особенно - то, что важно. Я особенно не волнуюсь по поводу решения для IE6.
Какая-либо из главных платформ (Dojo, jQuery, Прототип, Mootools) выставляет это в простом перекрестном браузере совместимый путь?
Это должно помочь, никаких библиотек не требуется:
function currentScrollPercentage()
{
return ((document.documentElement.scrollTop + document.body.scrollTop) / (document.documentElement.scrollHeight - document.documentElement.clientHeight) * 100);
}
Использование jQuery
$(window).scrollTop();
даст вам прокрутку положение, затем вы можете определить, какой процент зависит от высоты окна.
Существует также стандартное свойство DOM scrollTop
, которое можно использовать, например, document.body.scrollTop
, однако я не уверен, как это ведет себя в кроссбраузерности. есть несоответствия, которые учитывает метод jQuery.
Если вы используете Dojo, вы можете сделать следующее:
var vp = dijit.getViewport();
return (vp.t / (document.documentElement.scrollHeight - vp.h));
Что вернет значение от 0 до 1.