目前项目收尾,开始对之前的,之前用的一个树节点的插件,只可以使用单击事件,无法使用双击事件,于是百度一下,自定义了一个双击事件,原理是通过两次时间差来定义,代码如下:
1 //最后一次触发节点Id 2 var lastSelectedNodeId = null; 3 //最后一次触发时间 4 var lastSelectTime = null; 5 6 //在这里自定义双击需要实现的功能 7 function doubliclick(data){ 8 9 } 10 11 //clicknode单击事件 12 function clickNode(event, data) { 13 if (lastSelectedNodeId && lastSelectTime) { 14 var time = new Date().getTime(); 15 var t = time - lastSelectTime; 16 if (lastSelectedNodeId === data.nodeId && t < 500) { 17 customBusiness(data); 18 } 19 } 20 lastSelectedNodeId = data.nodeId; 21 lastSelectTime = new Date().getTime(); 22 23 } 24 25 //自定义双击事件 26 function customDblClickFun() { 27 //节点选中时触发 28 $('#nodeselect').on('nodeSelected', function (event, data) { 29 clickNode(event, data) 30 }); 31 //节点取消选中时触发 32 $('#nodeselect').on('nodeUnselected', function (event, data) { 33 clickNode(event, data) 34 }); 35 } 36 37 //调用双击事件的播放方法 38 $(document).ready(function () { 39 doubliclick(); 40 });