零全零美(www.zzgwt.com)
          生活中的很多事情,并不像If...Else那么簡單!
          posts - 96,comments - 52,trackbacks - 0
          <2008年11月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          常用鏈接

          隨筆分類

          隨筆檔案

          友情鏈接

          搜索

          •  

          積分與排名

          • 積分 - 151872
          • 排名 - 402

          最新評論

            在默認的情況下,雙擊事件時是要觸發單擊事件的,但是這種情況有時候卻是我們不想要的,那么如何才能在雙擊的時候屏蔽單擊事件的觸發呢?網上流傳一種延遲執行的方法,大致思路如下:
            1、聲明一個全局的計時器變量如:clickTimer
            2、在代理單擊事件里設置計時器,默認220毫秒之后觸發真正的單擊事件處理函數
            3、在雙擊事件里判斷計時器變量,如果該變量不為NULL,則說明在觸發該雙擊事件前觸發了單擊事件,取消計時器,因為真正的單擊事件處理函數在220毫秒之后才會觸發,所以在這個時候結束定時器,則真正單擊事件處理函數不會被執行。

          附上代碼:
           1var timerClick=null;   
           2//單擊事件代理
           3function _onNodeClick(id){
           4    //onNodeClick才是真正的單擊事件處理函數
           5  timerClick=window.setTimeout("onNodeClick('"+id+"')",220);   
           6 }

           7//雙擊事件處理函數
           8function _onNodeDbClick(id){   
           9  if(timerClick){   
          10      window.clearTimeout(timerClick);  
          11     }
             
          12}
          posted on 2008-11-04 20:14 零全零美 閱讀(1262) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 宣威市| 沈丘县| 大姚县| 五峰| 台湾省| 疏附县| 临桂县| 沈阳市| 凤台县| 连州市| 东兴市| 邻水| 平江县| 湘乡市| 龙游县| 丰城市| 泰顺县| 阿合奇县| 平陆县| 山东| 扎囊县| 南召县| 翼城县| 河东区| 齐河县| 博野县| 夹江县| 静安区| 钟山县| 卢湾区| 驻马店市| 抚宁县| 嘉善县| 昂仁县| 买车| 明光市| 耒阳市| 潮州市| 犍为县| 贵港市| 张家界市|