如何在点击内容并按住鼠标点击而不是鼠标滚轮的同时左右滚动内容?
我尝试了很多选项。但是没有用
最初读这篇文章是因为你想左右滚动内容。现在我正在阅读它,因为你想使用鼠标左键/右键来滚动?无论哪种情况,你都可以只使用javascript,不使用插件。
您可以使用mousedeown
启动滚动间隔并设置滚动方向,然后使用mouseup
清除滚动间隔。
let doc = document.scrollingElement,
scroll = {
distance: 200, //how far to scroll each interval
interval: null,
stop: function() { clearInterval(scroll.interval); },
start: function(direction) {
scroll.stop();
scroll.interval = setInterval(function() {
doc.scrollTo(doc.scrollLeft, doc.scrollTop + scroll.distance * direction);
} , 200); //interval delay = scroll speed
}
};
document.querySelector('body').addEventListener('contextmenu', function(e) {
e.preventDefault(); //prevent right click menu
});
document.querySelector('body').addEventListener('mousedown', function(e) {
scroll.start({ 1: 1, 2: -1 }[e.buttons] || 0); //1=left=down, 2=right=up
});
document.querySelector('body').addEventListener('mouseup', function() {
scroll.stop();
});
<div class="visual" style="height:0px;width:0px;border-left:100px solid transparent; border-right: 100px solid transparent;border-bottom: 2000px solid #eeeeee;margin-left:100px;"></div>