2

在我的代码中,我将事件处理程序绑定到document

$(document).bind("myEvent", function() { ... });

我是否必须等待准备好的事件(即使用$(document).ready)来绑定事件处理程序,以及当我document特别绑定它们时?

4

1 回答 1

5

$(document).ready用于确保 DOM 在尝试与之交互之前已准备好。如果您将脚本放入,<head>那么如果您与 DOM 交互,我建议您将代码放入此块中。如果您将脚本放在<body>DOM 元素之后的底部,则不需要它 - 但我仍然建议使用它。

更新

将事件处理程序附加到处理程序document不需要代码位于ready处理程序中,但它通常用于保持一致性,有些人(包括我在内)将所有脚本放置在处理程序中以附加事件ready处理程序(无论目标如何)。

您会注意到,在bind()附加处理程序之前,该元素的文档必须存在。

处理程序附加到 jQuery 对象中当前选定的元素,因此这些元素必须存在于调用 .bind() 的位置。

另请注意,这.on()是替代.bind()jQuery 1.7的首选和建议方法

于 2012-11-21T11:13:45.643 回答