将匿名函数传递给jQuery,并引用变量范围

时间:2016-07-11 17:38:29

标签: jquery scope

我熟悉jQuery中的这个构造:

$('#some-element').doSomethingJQueryDoes();

但我不明白这个结构:

$(function(){
    ..
});

看来我正在将一个匿名函数传递给jQuery,但我很好奇:

  • 这是什么时候执行的?从里面的代码看来它在document.ready
  • 上执行
  • 有没有办法让这个函数成为一个NAME,以便我可以在事件发生之外,在其范围之外调用它?

1 个答案:

答案 0 :(得分:1)

  

这是什么时候执行的?从里面的代码看来它在document.ready

上执行

这是正确的。它与$(document).ready(function() { /* ... */ })

具有相同的效果
  

有没有办法让这个函数成为一个NAME,以便我可以在事件发生之外的范围之外调用它?

当然,如果你想:

var myFunc = function() { /* ... */ };

$(myFunc);