<script>
jQuery(function($) {
$('#container').jstree();
});
</script>
$
被传递到匿名函数,这是什么意思?
答案 0 :(得分:2)
美元符号($)实际上是jQuery函数的别名。根据文档,如果您将回调作为参数传递给此函数,它将在DOM准备就绪时执行。
答案 1 :(得分:2)
jQuery(function( $ ) {
// Your code using failsafe $ alias here...
});
和
$(function() {
// Document is ready
});
同时使用$(document).ready()的快捷方式和参数to 使用$ alias编写failafe jQuery代码,而不依赖于 全球别名。
答案 2 :(得分:1)
它使“$”成为局部变量,从而优雅地避免与可能使用“$”符号的任何其他变量发生冲突。
这些函数都做同样的事情 - 在DOM准备好时执行一些代码。
接受函数作为参数的“$”和“jQuery”被创建为快捷方式,以避免重复这样的常见构造。接受一个接受$作为其第一个参数的函数是一个进一步的语法糖 - 现在你可以方便地完成闭包而无需自己动手。
答案 3 :(得分:1)
http://api.jquery.com/jQuery/#jQuery3
jQuery(function( $ ) {
// Your code using failsafe $ alias here...
});
答案 4 :(得分:0)
$
是jQuery
的别名。
所以你也可以写jQuery('#container').jstree();
答案 5 :(得分:0)
代码看起来像是在JavaScript中Module Pattern的尝试。好处是匿名函数有一个闭包,有助于维护变量的隐私,并维护其局部变量和函数的状态。
实现模式的正确方法是:
(function($) {
...
})(jQuery);
其中(...)()
是IIFE(立即调用Function Expression)的示例。函数表达式由尾随()
调用,如果它包含jQuery
,则会将jQuery
函数作为$
传递到匿名函数的作用域,因为它就是它的含义作为参数名称。这种模式的好处是人们可以编写jQuery插件,并可以维护自己的jQuery函数和变量副本,并根据需要调用它们,这有助于解决名称冲突。
当前接受的答案是错误地解释了文档,这只是声明如果你有一个函数声明,你可以通过将文件传递给jQuery函数来执行它作为回调,这相当于jQuery的$(document).ready(function(){...});
答案 6 :(得分:-1)
jQuery() — which can also be written as $() — searches through the DOM ...
因此:
$( "div.foo" );
等于jQuery( "div.foo" );
答案 7 :(得分:-1)
简而言之: $是指由JQuery设置的全局变量,用于表示自己。
不那么短: Javascript变量命名约定允许您使用&#39; $&#39;,&#39; _&#39;来启动变量。或类别“大写字母(Lu)”,“小写字母(Ll)”,“标题字母(Lt)”,“修饰符字母(Lm)”,“其他字母(Lo)”或“”中的任何有效unicode字符字母编号(Nl)“。
因此,您可以拥有变量$或_。很多javascript框架/库/东西利用这个事实来缩短他们的调用。
答案 8 :(得分:-1)
所以在JQuery(Javascript库)中,美元符号是JQuery函数的别名/引用。
在这种情况下,第一行相当于$(document).ready(),它等待DOM在运行之前完成加载。
另外一个词,你想在DOM完成加载后运行的函数(几乎所有函数都是你想要放在里面的函数),就像jstree()一样。