可能性のある複製:
jqueryでスクロールの上下を区別しますか?
ユーザーが下にスクロールするか上にスクロールするかを検出することは可能ですか?
例:
$(window).scroll(function(){
// IF USER SCROLL DOWN
DO ACTION
// IF USER SCROLL UP
DO ANOTHER ACTION
});
ありがとう
JQueryでスクロールアップ/ダウンを区別するには、次を使用できます。
var mousewheelevt = (/Firefox/i.test(navigator.userAgent)) ? "DOMMouseScroll" : "mousewheel" //FF doesn't recognize mousewheel as of FF3.x
$('#yourDiv').bind(mousewheelevt, function(e){
var evt = window.event || e //equalize event object
evt = evt.originalEvent ? evt.originalEvent : evt; //convert to originalEvent if possible
var delta = evt.detail ? evt.detail*(-40) : evt.wheelDelta //check for detail first, because it is used by Opera and FF
if(delta > 0) {
//scroll up
}
else{
//scroll down
}
});
このメソッドは、overflow:hidden
を持つdivでも機能します。
FireFox、IEおよびChrome。