随着鼠标移动滚动

Rad*_*adu 2 javascript jquery scroll

var down=false;
var scrollLeft=0;
var x=0;

$('#test').mousedown(function(e) {
    down = true;
    scrollLeft = this.scrollLeft;
    x = e.clientX;
}).mouseup(function() {
    down = false;
}).mousemove(function(e) {
    if (down) {
       this.scrollLeft = scrollLeft + x - e.clientX;
    }
}).mouseleave(function() {
    down = false;
});
Run Code Online (Sandbox Code Playgroud)

这是一个演示: http: //jsfiddle.net/STVqe/3/

我希望能够使用鼠标滚动 div。它工作正常,尽管文本有点奇怪,因为您可能会意外选择内容,但是当您将鼠标移到测试之外时,它会出现一个问题div。即使我正在设置,它也会继续滚动down=false。我怎样才能阻止这种情况以及为什么会发生这种情况?

Mat*_*all 5

这在 Chrome 中适用于我: http: //jsfiddle.net/mattball/MP2cg/