首页 > 其他 > 详细

鼠标指针被高层元素挡住时,触发下层元素的鼠标事件

时间:2014-12-08 17:29:28      阅读:258      评论:0      收藏:0      [点我收藏+]

在做如下图这种拖拽效果的时候,遇到一个问题:

被拖拽的元素一直位于一个比较高的层,且一直跟随鼠标移动,这样会挡住鼠标,导致其无法触发下层元素的任何事件。这样下层的元素就无法响应拖拽的事件了。

 

bubuko.com,布布扣

 

受到这篇文章的启发:http://www.vinylfox.com/forwarding-mouse-events-through-layers/

最终实现的思路是,在mouseover事件中:

1.隐藏高层元素

2.根据坐标获取当前位置的最高层DOM

3.手动触发事件

element.hide();
var over=document.elementFromPoint(me.clientX,me.clientY)
//手动触发事件
if(over && over.onmouseenter) over.onmouseenter(me);
element.show();

  

 

鼠标指针被高层元素挡住时,触发下层元素的鼠标事件

原文:http://www.cnblogs.com/tzyy/p/4151325.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!