当页面实际上没有滚动时如何检测鼠标滚动(因为它太小了)

How to detect mouse scroll when the page doesn't actually scroll (because it's too small)

scroll事件不捕捉鼠标"scroll"动作,而是捕捉页面滚动动作。

这意味着在太小而无法实际滚动的页面上,无法检测到用户的滚动动作(例如,将其转换为缩放动作)。

要明白我的意思,请比较以下两个:

https://jsfiddle.net/r8aykcut/1/
https://jsfiddle.net/r8aykcut/2/

有没有办法在页面本身不滚动的情况下监听鼠标滚动事件?

你可以使用这个监听器

 addEventListener("wheel", anyFunctionYouWant ); 

你必须在你的哪个元素中设置这个监听器,你想缩放

例如,如果你有这样的东西

<div class="wraper">
   <div>
      <div id="ele" ></div>
   </div>
</div>

为 .wraper 设置这个监听器,这是因为我认为你想要一些东西,比如放大 google 地图,如果你想要这个,你有功能,如果用户在你的地图上滚动,你的功能就会触发(对于缩放 in/out ),光标必须设置在你的那个元素上,有 Listener

我认为你可以使用 wheel 事件。 旋转定点设备(通常是鼠标)的滚轮按钮时会触发滚轮事件。 这是参考 link: wheel event

您已添加滚动侦听器。当页面滚动时它会监听。你必须使用车轮监听器。

document.addEventListener("wheel", detect);
function detect (e) {

console.log(e)

};

以上代码适合您。