思路:利用jquery的bdclick事件(双击事件)。
难点:给同一个元素绑定单击事件和双击事件会发生冲突,出现错误。
解决:利用js定时器 setTimeout(),方法解决。
首先给元素绑定一单击事件,单击事件方法内加入定时器,规定单击300ms后触发。
然后绑定双击事件,执行clearTimeout()方法,令定时器失效,接着执行对应的双击操作。
执行结果为,300毫秒内点击两次对象触发双击事件,否则触发单击事件。
具体代码如下。
function bindClick(){ var timeallUserName = null; $("div[name='divTest']").bind("click",function(){ clearTimeout(timeallUserName); timeallUserName = setTimeout(function(){ alert("单击!!"); }, 300); }).bind("dblclick",function(){ clearTimeout(timeallUserName); alert("双击!!!"); }) }