2015-07-11 4 views
1
$(window).load(function() { 
    if ($(window).scrollTop() == 0) { 
     $('#girl').delay(4000).fadeOut(4000); 
     $('#new_girl').fadeIn(500); 
    } 
    else{ 

    } 

}); 

Когда я загружаю страницу и прокручиваю вниз через 4 секунды, эта функция работает нормально. Но когда я загружаю страницу и начинаю прокручивать ее при загрузке страницы, это снова работает. Я хочу это, Если я прокручу вниз, не дожидаясь 4 секунд, тогда уничтожьте эту функцию. Возможно, эта логика должна быть установлена ​​в инструкции else. Спасибо ...Уничтожьте эффект при прокрутке вниз

ответ

0

$(window).load(function() { означает, что ваш код внутри него будет выполняться только тогда, когда window полностью загружен

Таким образом, вы должны ждать.

Что вы можете сделать, это то, что пишут только этот код

if ($(window).scrollTop() == 0) { 
     $('#girl').delay(4000).fadeOut(4000); 
     $('#new_girl').fadeIn(500); 
    } 
    else{ 

    } 

и убедитесь, что JQuery включен перед этим кодом

Может быть, вы получите ошибку JS, если элементы с ID #girl и #new_girl не загружены в DOM

0

No.1, почему вы использовали метод $ ("window"). load. .. вы знаете, что это инициирует событие только после того, как все загружено на страницу ... например, css, js и включая изображения.

используйте метод document.ready, а не его, если вы хотите вызвать его сразу после загрузки документа. еще проверьте здесь оранжевую кнопку и посмотрите код siteflu

0

Но это также то, что говорит ваш код. Что вы можете сделать, это $(document).ready(function(){

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