Javascript jQuery抓取内容并水平滚动页面

Javascript jQuery抓取内容并水平滚动页面,javascript,jquery,scroll,Javascript,Jquery,Scroll,我的目标是抓取ContentX并在鼠标移动时水平滚动页面,直到鼠标停止(mouseup事件),类似于平板电脑的滑动动作 似乎很容易。。 在mousedown上获取clientX, 移动时被ClientX向左滚动, 完成后关闭mousemove功能 我已经玩了一段时间,无法得到我想要的滚动效果 我做错了什么 $('#thediv').on('mousedown', function(event) { var e = event; $('#thediv').on('mou

我的目标是抓取ContentX并在鼠标移动时水平滚动页面,直到鼠标停止(mouseup事件),类似于平板电脑的滑动动作

似乎很容易。。 在mousedown上获取clientX, 移动时被ClientX向左滚动, 完成后关闭mousemove功能

我已经玩了一段时间,无法得到我想要的滚动效果

我做错了什么

$('#thediv').on('mousedown', function(event) {  
    var e = event;   

    $('#thediv').on('mousemove',function(event){ 
        new_e = event; 
        $('html, body').stop().animate({
            scrollLeft: new_e.clientX  
        }, 300);   
        return false;  
     }); 

    $('#thediv').on('mouseup', function() { 
        $('#thediv').off('mousemove');  
    }); 
}); 

非常接近。我认为,只需从pageX中减去clientX,然后在stop函数中使用
false,true
,就可以获得所需的效果


漂亮!是的,这是理想的效果。它不会断断续续地停止mousemove功能。。这可能是一个javascript错误,没有捕获mouseup事件来停止mousemove函数吗?我发现了mouseup问题,如果mouseup事件在div之外触发,它将不会关闭mousemove事件。我还添加了删除mouseout上的mousemove事件的功能-感谢您的帮助:)
$('#greendiv').on('mousedown', function(e) {
    $('#greendiv').on('mousemove', function(evt) {
        $('html,body').stop(false, true).animate({
            scrollLeft: e.pageX - evt.clientX
        });
    });
});