2013-03-29 3 views
0

Я использую «если еще» ж/JQuery и у меня возникают проблемы, выяснить, как правильно заполнить второй (т.е. scrollTop) условие -JQuery использование scrollTop в случае еще условие

$(window).load(function(){ 
    if (window.location.hash == '' && $(window).scrollTop() == 0) { 

     doStuff_01(''); 

    } else { 
     doStuff_02(''); 
    } 
}); 

Это для анимированной записи страницы. Если пользователь только что появился там, , он должен отключить анимацию. Но, если пользователь уже появился, немного прокручивается и нажимает 'refresh', он не должен запускать анимации .

Как написать:

если window.location.hash == ''

И

'окно уже прокручивается вниз, по крайней мере 1px' < - это тот, который ускользает от меня.

Должен ли я использовать .scrollTop()?

ответ

0

окно уже прокручивается вниз, по крайней мере 1px

может быть представлен в коде, как

if($(window).scrollTop() > 0) { 
    ... 
} 
+0

Мне кажется, что .scrollTop это действие, таким образом, используя его как условие просто не сработает. Мне нужно найти альтернативный способ сказать: «Когда страница загружается, если история напоминает, что страница НЕ была прокручена, продолжайте». – Greta

+0

@Greta - 'scrollTop()' является * действием * только при вызове с аргументом. Без аргументов это просто * getter *, который возвращает текущее верхнее значение прокрутки - и может использоваться в условиях. – techfoobar

+0

Хорошо спасибо. Таким образом, это можно использовать. Почему это не работает, непонятно. Когда вы обновляете страницу, браузер помнит, как далеко вы прокрутили страницу. Это не заставляет вас вернуться к нулю/вершине. – Greta