$(function(){})在javascript中的含义是什么

时间:2014-08-01 10:29:04

标签: javascript jquery flot

我正在使用flot库来制作地块。网站上给出的示例都有这样的javascript代码:

<script>
$(function() {
    ...
    ...
    ... plot ...
});
</script>

http://www.flotcharts.org/flot/examples/realtime/index.html

$(function(){})位是什么意思?

4 个答案:

答案 0 :(得分:7)

document-ready处理程序

  

描述:指定在DOM完全加载时要执行的函数。

答案 1 :(得分:5)

$()调用一个函数(一个名为$,它在JS中是一个有效的函数名,即使它看起来不像一个或给你any clue as to what the function does)。

function() {...}是一个函数表达式,它定义了一个新函数(与3定义新数字或[]新数组的方式相同)。

在这种情况下,函数表达式是$函数调用的第一个参数

jQuery库定义了一个$函数(它是高度重载的,因此根据传递给它的内容,它会做很多不同的事情)。

如果将函数传递给$,那么当DOM ready事件触发时它将调用传递的函数。

答案 2 :(得分:2)

这是文档就绪处理程序

$( document ).ready(function() {
  // Handler for .ready() called.
});

这是为了防止在文档加载完成之前运行任何jQuery代码(准备就绪)。

相当于

$(function() {
  // Handler for .ready() called.
});

如果在初始化DOM之后调用.ready(),则会立即执行传入的新处理程序。

以下是在文档完全加载之前运行方法时可能失败的一些操作示例:

1.想要隐藏尚未创建的元素

2.尝试获取尚未加载的图像的大小

jQuery团队为文档就绪事件创建了一个更短的方法:

$(function(){

   // jQuery methods go here...

});

取决于开发人员使用哪种语法,但在阅读代码时更容易理解文档就绪事件

有关详情:See

答案 3 :(得分:-2)

所有这些都意味着相同:

  • $(document).ready(handler)
  • $().ready(handler) (不推荐)
  • $(handler)

通常你在处理程序的地方使用匿名函数:

$(function() {
  // Do this when .ready() called.
});