为什么在这里使用jQuery语法?

时间:2011-04-04 18:03:19

标签: javascript jquery

在此截屏视频(http://www.youtube.com/watch?v=h0uZIljjElo)中,我认为我经常看到jQuery语法用于包装和定义不受益于jQuery的函数。 E.g:

<script>
  $(function() {
    // some code to run at load time
  });
</script>

编写没有第2行和第4行的代码会更短。以这种方式写作是否有一些价值?

4 个答案:

答案 0 :(得分:7)

代码是“从jQuery中受益”,要求库在整个DOM准备好之前不要运行它。例如,如果该代码在<head>中,则对DOM的引用(通过“id”或“class”或其他任何内容)通常不起作用,因为正文尚未加载,因此没有要找的元素。

答案 1 :(得分:2)

即使该函数未明确使用JQuery,它也将在ready的{​​{1}}事件上执行。使用document可以实现相同的效果,但JQuery的版本更好恕我直言,因为它允许任意数量的函数来监听window.onload = function() {}事件。

答案 2 :(得分:2)

这个语句是一个文档就绪语句,基本上是说“在DOM准备好被操作之前,请不要运行这个块中的任何代码。”

答案 3 :(得分:0)

没有什么不妥,只有在某些情况下你可能想要在你正在寻找的DOM对象时立即使用函数,所以我们将函数留在外面并尽快使用“on *”事件。但是将它包装在jquery中所有DOM就绪函数只是一种更安全的编写方式。