在scrollup stop jquery函数上,在scrollldown resume上

时间:2015-08-07 14:42:47

标签: jquery scroll

所以我有一个AJAX聊天,我目前正在使用setInterval函数,它不是非常用户友好,因为它禁止你向上滚动。

JSFIDDLE:http://jsfiddle.net/Ls3rxpuo/

jQuery:

  var interval = setInterval(function(){
      $("#messages").animate({ scrollTop: 10000 }, 200);
  });

现在我想建立在那个脚本上。问:scrollUp时停止此功能。 Scrolldown时恢复。 提前谢谢!

1 个答案:

答案 0 :(得分:0)

尝试在用户向上滚动时收听。

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
        clearInterval(interval); // stop your interval 
    }else{
        //scroll down
    }   
});