jQuery中使用trigger触发click事件失效的解决办法

网友投稿 351 2022-06-13


今天在处理jquery根据cookie是否存在而使用trigger触发元素的click事件的时候遇到这个问题,各种调试都没能找出引起问题的原因所在,后来在stackoverflow中搜索到相关问题,并用其所提到的原因解决了这个问题。

整理英文原版如下:

question:

I'm figuring out why this simple script is not working:

jQuery.noConflict();

jQuery(document).ready(function() {

jQuery('.next_button a').trigger('click');

});

noConflict is necessary because I also load prototype/scriptaculous in this page.

If I replace .trigger('click') with another function (es: .css(...) this works well. Only triggering seems to go broken.

answer:

You can only trigger a click that jQuery has created. It's one of jQuery's cute little quirks.Use the trigger method AFTER you've established the click listener。

我用到这个答案解决了问题,大意是说:你只有在用jQuery创建click方法之后才能去触发click函数,这是jQuery的一个小怪癖。在建立click监听器之后再去使用trigger方法。

而我的代码恰恰就是把click监听器定义在了trigger函数之后,所以页面重新加载的时候无法执行trigger中的click方法,按照这个说法更换了click监听器的位置到trigger触发器之前,就解决了问题。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:用正则表达式和javascript对表单进行全面验证(js正则表达式验证中文)
下一篇:png、jpg、gif三种图片格式的区别(png格式图片和jpg格式图片有什么区别?)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~