萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> JS實現鼠標單擊與雙擊事件共存

JS實現鼠標單擊與雙擊事件共存

 本篇文章主要是對JS實現鼠標單擊與雙擊事件共存的簡單實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助

一直都認為在Web開發中,雙擊事件都是少至又少地使用,直到最近項目需要,要在一個按鈕上綁定單擊與雙擊兩件事件。開始也覺得不就是給按鈕綁下兩個事件而已罷了……只是後來才明白,是我想得太簡單,在雙擊事件觸發的同時也會觸發單擊的~囧   通過一番研究後,終於利用JS中“setTimeout”延時執行方法的辦法,將單擊延遲300毫秒執行才解決了,代碼如下:    代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>     <title></title>     <mce:script src="jquery-1.6.min.js" mce_src="jquery-1.6.min.js" type="text/javascript"></mce:script>     <mce:script type="text/javascript"> <!--         $(function () {             var num = 0;             var timeFunName = null;             $("button").bind("click", function () {                 // 取消上次延時未執行的方法                 clearTimeout(timeFunName);                 // 延時300毫秒執行單擊                 timeFunName = setTimeout(function () {                     num++;                     $("textarea").val($("textarea").val() + "第" + num + "次事件,事件名:單擊/n");                 }, 300);            }).bind("dblclick", function () {                 // 取消上次延時未執行的方法                 clearTimeout(timeFunName);                 num++;                 $("textarea").val($("textarea").val() + "第" + num + "次事件,事件名:雙擊/n");             });         });     // --></mce:script> </head> <body>     <textarea rows="20" cols="50"></textarea><button type="button">提交</button></body></html>    
copyright © 萬盛學電腦網 all rights reserved