在重叠元素上注册鼠标事件
Register mouse events on overlapping Elements
在我的svg图像中,我画了很多路径(和其他元素),其中一些是部分透明的,可能相互重叠。
如何确保鼠标事件(如单击)被所有元素的侦听器接收,而不仅仅是最顶层的侦听器。
基本示例(假设 A、B、C 具有相同的坐标和大小):
<g id="parent">
<rect id="A" .../>
<rect id="B" .../>
<rect id="C" .../>
</g>
在此示例中,期望的结果是 A、B、C 上的侦听器注册了对矩形 C(最顶部)的单击
。使用 google,我了解到我可以通过向父级注册侦听器然后检查受影响的子元素来自己调度事件,但是我想知道是否有更好的解决方案或库。
使用 jquery++,您可以找到哪些元素位于给定位置,即使它们位于其他元素后面,您也可以执行一些简单操作,例如:
$("#parent").on("click",function(ev){
$(this).children().within(ev.offsetX,ev.offsetY)...; //filter the elements
});
http://jquerypp.com/#within
相关文章:
- JsFiddle上的鼠标事件不起作用
- node-webkit-从父窗口捕获iframe鼠标事件
- 鼠标事件在OpenLaszlo应用程序中不起作用
- 为画布绘图添加鼠标事件
- 如何在元素中处理鼠标事件,但不能在其子元素上处理
- KineticJS鼠标事件问题
- GWT-允许鼠标事件在两个叠加画布之间传播
- 为什么不是't html<对象>元素响应鼠标事件
- 如何恢复Kinetic.js鼠标事件
- 鼠标事件's在CtrlKey不起作用的情况下单击
- 鼠标事件,我的代码出了什么问题
- 撤消javascript中的所有鼠标事件处理程序
- JQuery facebook订阅插件鼠标事件
- Javascript/jQuery-鼠标事件没有在html上触发,添加了动态
- React模板鼠标事件在容器's鼠标事件
- 使用两个重叠的画布,我可以将鼠标事件传递到底部的画布吗
- 谷歌地图 api v3 搜索多边形没有鼠标事件
- CSS 溢出边界半径鼠标事件
- 将触摸事件转换为鼠标事件仅每秒有效一次
- D3.js鼠标事件不起作用