2011-12-13 115 views
0
$('.classy').on('click', 'button', function(){ 
    console.log('clicked'); 
}) 

-Click事件触发两次,但只有在触摸设备上

<div class='classy'> 
    <button> - </button> 
</div> 

任何理由为什么会在触摸设备上的火两次?它与正常的鼠标事件完美配合。

注意:我也尝试过.bind .live只是为了确保同样的问题。

+0

您是否有任何其他事件附加到该DOM元素? – Neal

+0

一些标记会有所帮助,或者更好一些[jsfiddle](http://jsfiddle.net)。 – zzzzBov

+0

不,我不这么认为,再加上它是同时发射时间,点击记录的事件。 – fancy

回答

0

尝试传递事件,然后调用preventDefault()。

$('.classy').on('click', 'button', function(e){ 
e.preventDefault(); 
console.log('clicked'); 
})