鼠标事件记录

问题:双击某个对象,在鼠标位置显示一块工具栏

解决:见代码

1         var pageX = params.event.event.pageX;
2         var pageY = params.event.event.pageY;
3         var node_operate_div = $('#node_operate_div')[0];
4         node_operate_div.style.left = pageX + 'px';
5         node_operate_div.style.top = pageY + 'px';
6         node_operate_div.style.display = "block";

 

 

问题:在一个对象上绑定了单击事件和双击事件,总是会在触发双击事件之前触发两次单击事件,如何在双击事件的时候屏蔽掉单击事件?

解决:给单击事件一个延时执行函数(setTimeout必须为匿名函数),具体见下面代码

 1    var TimeFn = null;
 2     /**
 3      * 鼠标单击事件(临时措施)
 4      */
 5     handleOnceClickEvent:function(params){
 6         clearTimeout(TimeFn);
 7         TimeFn = setTimeout(function(){
 8                 //这里执行单击事件
 9         },400);
10     },
11     /**
12      * 鼠标双击某个节点(临时措施)
13      */
14     handleDbClickEvent:function(params){
15         clearTimeout(TimeFn);
16         //这里执行双击事件
17     },

 

posted @ 2016-10-20 10:37  惟吾德馨‘  阅读(184)  评论(0编辑  收藏  举报