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;
});
Here's a demo: http://jsfiddle.net/STVqe/3/
I want to be able to scroll the div by using the mouse. It works fine, though a bit weird with text since you can accidentally select things, but it has a problem that shows up when you move the mouse outside of the test div
. It continues scrolling even though I am setting down=false
. How can I stop this and why is it happening?