尽管似乎已加载DOM(控制台中显示“就绪”),但在这种情况下为什么不触发click事件?
$(document).ready(function() {
console.log("ready!");
});
$("p").click(function() {
alert("You clicked on paragraph.");
});
我的理解是,因为click事件的代码是在文档就绪功能正确执行后执行的,所以它应该可以工作,但不能。仅在就绪功能中的花括号之间包含事件时,此功能才有效。
最佳答案
$(document).ready
是异步的。您正在向其传递回调函数,以便它记录DOM已准备就绪的事实。但是,设置了click
处理程序后,将立即执行ready
绑定(bind)代码,而不是在执行回调后立即执行。
您只需要确保将绑定(bind)逻辑放入ready
处理程序中即可。