2017-06-30 41 views
1

我真的很想空手道砍我的電腦。我的jquery窗口滾動停止工作

我得到這個代碼,它在Firefox的作​​品,但沒有鉻:

$(window).on("scroll", function() { 

    if ($('html, body').scrollTop() > 25) { 
     console.log("scrolled"); 
     //do stuff 
    } 
    else { 
     //do other stuff 
    } 
}); 

這不是洛在Chrome瀏覽器開發工具的控制檯滾動。

任何人都知道怎麼回事。

歡呼聲。

+2

您是否嘗試過使用'$(文件)''而不是$( 'HTML,身體')'? – JiFus

+0

試試這個 '$(窗口).scroll(函數(){ 如果($(本).scrollTop()> 25){// 的東西在這裏 }其他{// 的東西在這裏 }} );' – ThucVu

+0

滾動事件是否仍然激發?如果沒有,嘗試將滾動事件綁定到'$(document)'。但是,如果事件有效......那麼最有可能的@JiFus評論以上將工作 –

回答

1

嘗試在你的JavaScript使用document而不是window

$(document).scroll(function() { 
 
    if ($(this).scrollTop() > 25) { 
 
     console.log("scrolled"); 
 
     //do stuff 
 
    } 
 
    else { 
 
     //do other stuff 
 
    } 
 
});
div { 
 
    height: 1000px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div></div>

0

更新你的jQuery版本,避免做上滾動的東西爲了最大響應

1

您可以使用$(window).on("scroll", function() {})$(this).scrollTop()像以下。

$(window).on("scroll", function() { 
 
    if ($(this).scrollTop() > 200) { 
 
     console.log("more than 200"); 
 
     //do stuff 
 
    } 
 
    else { 
 
     console.log("less than 200") 
 
    } 
 
});
div#yourdiv { 
 
    height: 1000px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="yourdiv"></div>