如何使用指针事件只对滚动事件作出反应?

How do I use pointer-events to react only to scroll event?

本文关键字:事件 何使用 指针 滚动      更新时间:2023-09-26

是否可以将指针事件设置为仅对触摸板上的滚动或拖动作出反应?我有一个div 'in the way'用于滚动复杂的html安排*,我想知道我是否可以限制指针事件仅对滚动/鼠标滚轮动作作出反应。

我想知道我是否理解正确。如果pointer-events:none;意味着所有事件都是无效的,我如何杀死所有事件,但留下一个活动事件?

我已经设置了一个比它所能容纳的框大的HTML区域,但是如果我要显示滚动条,由于弹出(position:top)元素,它看起来会比它应该高。这个区域仍然需要滚动,所以为了实现这一点,我使用jQuery使我的"box to scroll"跟随div内的一个不可见的div:

<div id="scrollcontrol"style="overflow-y:auto;overflow-x:hidden;position:absolute;
   top:12px;left:180px;width:40px;height:1300px;">
   <div id="catscrollpos"style="position:absolute;
    top:0px;width:200px;height:2250px;">
   </div>
</div>
脚本

$('#scrollcontrol').scroll(function({
  $('#rangetable').css({
  'top':$('#catscrollpos').position().top+'px'
  });
});

关于文档中的规范:

当一个元素应用了pointer-events: none;

元素永远不能任何鼠标事件的目标,任何事件都是void;

请看下面的演示:

http://jsbin.com/wewosumehi/1/

事件没有被触发,你甚至不能滚动container