Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery的奇怪行为_Jquery - Fatal编程技术网

jQuery的奇怪行为

jQuery的奇怪行为,jquery,Jquery,我在main容器中向类名为element的所有元素附加一个事件,如下所示 $('#main').delegate('.element','click', function(){ console.log($(this).html()); }); 但问题是,在Windows Chrome浏览器中双击时会触发click事件,而在Mac中则是单击触发的 浏览器:谷歌浏览器 操作系统测试:Windows8和Mac jQuery版本:jQuery 1.10.2 从jQuery 1.7开始,.de

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

$('#main').delegate('.element','click', function(){
     console.log($(this).html());
});
但问题是,在Windows Chrome浏览器中双击时会触发click事件,而在Mac中则是单击触发的

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

从jQuery 1.7开始,.delegate()已被.on()方法取代。但是,对于早期版本,它仍然是使用事件委派的最有效方法。有关事件绑定和委派的详细信息,请参见.on()方法。通常,这是两种方法的等效模板:

尝试使用:

从文档中:

从jQuery 1.7开始,.delegate()已被.on()方法取代。但是,对于早期版本,它仍然是使用事件委派的最有效方法。有关事件绑定和委派的详细信息,请参见.on()方法。通常,这是两种方法的等效模板:

尝试使用:

试试这个:

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

$('#main').delegate('.element','click', function(){
     console.log($(this).html());
});
希望它能有所帮助

试试这个:

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

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

希望它能有所帮助

您也可以发布您的标记吗?双击会触发两次还是一次?看起来不错,我已经使用了很多次,但动态添加的元素失败了很多次。您应该尝试在JSFIDLE中复制您的问题。如果您无法复制它,那么您的问题来自其他地方,而不是提供的代码。您也可以发布您的标记吗?它是通过双击触发两次,还是一次?看起来不错,我已经使用了很多次,但使用动态添加的元素失败了很多次。您应该尝试在JSFIDLE中复制您的问题。如果您无法复制它,那么您的问题来自其他地方,而不是提供的代码。@A.Wolff假定不是指确定性:)这是真的,我应该说:delegate()也确实有效!;)OP的问题不在这里不,它确实有效。on比delegate更有效,因此不推荐使用它。如果这个问题得到解决,我会非常惊讶it@A.Wolff好了:D不管怎么说,随便猜猜问题出在哪里,就我而言,代表仍然有效,阿伦的小提琴证实了这一点。@Liam需要OP提供更多的细节来说明问题出在哪里。但根据他当前的代码/信息,我只能怀疑jquery 1.10的委托。@A.Wolff应该没有提到确定性:)这是真的,我应该说:delegate()也确实有效!;)OP的问题不在这里不,它确实有效。on比delegate更有效,因此不推荐使用它。如果这个问题得到解决,我会非常惊讶it@A.Wolff好了:D不管怎么说,随便猜猜问题出在哪里,就我而言,代表仍然有效,阿伦的小提琴证实了这一点。@Liam需要OP提供更多的细节来说明问题出在哪里。但根据他当前的代码/信息,我只能怀疑jquery1.10中的代理。