2014-10-19 2 views

ответ

3

Как почему scrollTop из <body> остается на 0, это потому, что <body> не элемент, который имеет прокрутки содержимого.

Это было бы вместо этого <div id="c_base" class="c_base" ...> в пределах страницы:

console.log(document.getElementById('c_base').scrollTop); 
// e.g., 500 

Этот элемент является positioned для заполнения окна просмотра и имеет vertical overflow позволяет его содержимое прокручиваться.

html.fh .c_base { 
    overflow-y: auto; 
    overflow-x: visible; 
    position: absolute; 
    /* ... */ 
} 
+0

Благодарим вас за разъяснение! Может быть, вы можете дать предложение, возможно ли получить положение прокрутки на такой странице, не проверяя код? – user3763845

0

Хорошо, первый, просто для ясности, scrollTop это свойство, а не метод, поэтому он ничего не возвращает. Это является0.

Это происходит, когда нет вертикальной полосы прокрутки (т. Е. Весь контент соответствует странице дисплея), или полоса прокрутки уже находится в верхней части элемента.

См: https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollTop

Смежные вопросы