1

我正在将一个事件附加到容器 element内类名为的所有元素,如下所示main

$('#main').delegate('.element','click', function(){
     console.log($(this).html());
});

但问题是在 Windows Chrome 浏览器中双击时会触发 click 事件,而在 Mac 中单击会触发。

浏览器:Google Chrome 操作系统测试:Windows8 和 Mac jQuery 版本:jQuery 1.10.2

4

2 回答 2

1

.delegate()文档:

从 jQuery 1.7 开始,.delegate() 已被 .on() 方法取代。然而,对于早期版本,它仍然是使用事件委托的最有效方法。有关事件绑定和委托的更多信息在 .on() 方法中。通常,这些是两种方法的等效模板:

尝试使用.on()

$('#main').on('click','.element', function(){
     console.log($(this).html());
});
于 2013-09-23T09:30:27.390 回答
0

尝试这个 :

$(document).delegate('.element','click', function(){
     console.log($(this).html());
});

反而

$('#main').delegate('.element','click', function(){
     console.log($(this).html());
});

希望它会有所帮助

于 2013-09-23T09:45:48.493 回答