21

我见过一种语法,其中将函数放在括号中,括号后面跟着美元符号,如下所示:

$(function(){...});

这在 jQuery 中意味着什么?函数有什么作用?

4

2 回答 2

34

$(function(){...})是一个捷径

$(document).ready(function(){...});

请参阅 API 文档

http://api.jquery.com/ready/

  • $(document).ready(handler)
  • $().ready(handler) (this is not recommended)
  • $(handler)
于 2013-04-26T17:39:18.670 回答
2

括号内的函数在DOM完全加载时执行。

这是由 实现的.ready(),即 Mohammad Adil 已经说过,这是一条捷径。

文档.ready()摘录:

虽然 JavaScript 在页面呈现时提供了用于执行代码的加载事件,但在完全接收到所有资产(例如图像)之前,不会触发此事件。在大多数情况下,只要完全构建了 DOM 层次结构,就可以运行脚本。传递给的处理程序.ready()保证在 DOM 准备好后执行,因此这通常是附加所有其他事件处理程序和运行其他 jQuery 代码的最佳位置。

于 2013-04-26T18:23:52.760 回答