jQuery触发单击事件不在div上工作

我想在div上触发click事件。 我使用以下代码,但它无法正常工作。

 $('#showbanner').trigger('click'); 
 
show banner

我做错了什么? 我实际上想在页面加载后2秒显示横幅。 在我可以添加延迟事件之前,此div的click事件未触发。

这是我的代码示例: http : //codepen.io/anon/pen/aOzyxo

问题是因为你的trigger('click'); call是你脚本中的第一件事; 附加事件之前调用它。

您需要将其移动到脚本的末尾,以便在调用事件处理程序时将其绑定:

更新了Codepen

 enter code here 

试试这个 。

 $(function () { $(document).on("click", "#showbanner", function () { alert('Hola'); }); $("#showbanner").click(); }); 

显示横幅

试试这个

JS

 $('#showbanner').on("click", function() { alert("test"); }); $('#showbanner').trigger('click'); 

HTML

 
show banner

试试这个

 $('#showbanner').on("click", function() { alert("test"); }); $('#showbanner').click();