如何检测原生滚动条的按钮单击事件?

时间:2016-03-09 07:05:28

标签: javascript jquery html html5

我想知道我是否可以检测到原生滚动条的左/右或上/下按钮点击事件。我想知道,因为我想给滚动条的自定义行为,比如只在一些固定的步骤中滚动等。我使用了滚动功能,但它并没有完全给我我想要的平滑度:

var step = 200;
var nextPos=-1;
var pos;
var scrolltarget;
$(' .scrollable ul').scroll(function(e){
    clearTimeout($.data(this, 'scrollTimer'));
    scrolltarget=$(this);
    $.data(this, 'scrollTimer', setTimeout(function() {
        pos=scrolltarget.scrollLeft();
        if(pos%step!=0){
          if(pos>nextPos){
            scrolltarget.animate({
              scrollLeft: pos-pos%step+step
            },250);
          }
          else if(pos<nextPos){
            scrolltarget.animate({
              scrollLeft: pos-pos%step
            },250);
          }
        }

        nextPos=scrolltarget.scrollLeft();
    }, 250));         
});

1 个答案:

答案 0 :(得分:1)

你可以使用

$( window ).scroll(function() {
 // your java script code 
});

我建议你看看scroll jquery event