iOS開發(fā)中,雙擊事件dblclick在使用jQuery綁定時(shí)可能會遇到一些問題。
在iOS設(shè)備上,雙指同時(shí)點(diǎn)擊屏幕時(shí)會觸發(fā)雙擊事件,但是在使用jQuery綁定雙擊事件時(shí),有時(shí)會出現(xiàn)雙擊無效的情況,甚至是第二次單擊觸發(fā)了雙擊事件。
這是因?yàn)閕OS系統(tǒng)在處理雙擊事件時(shí)會有一定的延遲,如果用普通的方式綁定事件,可能無法捕獲到第二次單擊事件。
// 普通的綁定方式 $('.btn').dblclick(function(){ console.log('double click'); });
解決方法是使用hammer.js庫,它可以更準(zhǔn)確地捕獲事件,避免iOS系統(tǒng)的延遲問題。
// 需要使用hammer.js庫,先引入// 使用hammer.js綁定事件 var hammer = new Hammer(document.querySelector('.btn')); hammer.on("doubletap", function() { console.log('double click'); });
使用hammer.js庫綁定雙擊事件可以有效解決iOS系統(tǒng)延遲的問題,保證雙擊事件的準(zhǔn)確觸發(fā)。