如何检测用户手动移动滚动条或在javascript或jquery中通过脚本移动

问题描述 投票:0回答:1

[在Java语言中,我要检测用户是移动滚动条还是通过脚本移动滚动条。我已经编写了使用javascript移动div滚动条的代码。在这里,我想区分滚动位置是用户手动移动还是通过脚本移动。我用下面的代码。但是它检测到所有。

$("#log").scroll(function(e) {
    console.log("scrolling");
});

var logDiv = document.getElementById('log');

logDiv.addEventListener('DOMMouseScroll', function() {
    console.log("mouseEvent");
    userManualScroll = true; 
});

请帮助我。

javascript jquery html
1个回答
0
投票

设置全局变量

var userscroll = true;

每当通过JS调整滚动位置时,在滚动操作之前将userscroll设置为false,然后将true设置为true。

在仅在用户滚动时触发的任何函数中,添加if-子句

if (userscroll) {
   ...
© www.soinside.com 2019 - 2024. All rights reserved.