gpt4 book ai didi

javascript - jQuery 的 $ 在这个函数中是什么意思?

转载 作者:行者123 更新时间:2023-11-30 10:25:22 27 4
gpt4 key购买 nike

$有什么区别?

问题:

下一个例子中的$是什么意思?

JS:

jQuery(document).ready(function() {
console.log('loaded');
});

jQuery(document).ready(function($) {
console.log('loaded');
});

谁能给我解释一下这两个函数有什么区别?

提前致谢

最佳答案

$通常是 jQuery 构造函数的名称。也就是说,它是你每次要制作一个jQuery对象时调用的函数名。例如:

$('div')

它通常是一个全局变量,这意味着它在整个页面的 Javascript 中都可用。还有另一个变量 jQuery,它通常指向完全相同的东西。

console.log($ === jQuery); // true

但是,可以$ 设置为其他值。也许您想使用 $ 在您的代码中表示不同的含义。或者,也许您也在使用 Prototype,它也使用 $ 符号指向一个函数。

这就是为什么 jQuery.noConflict()方法存在:它停止引用 jQuery$

但是,许多作者更喜欢使用 $ 来引用 jQuery 构造函数,因为它更加简洁和可读。 jQuery 提供了一个有用的功能,使他们能够轻松地做到这一点。

当您执行 jQuery(document).ready(function() 时,您正在分配一个事件处理程序。该函数将在事件触发时运行。我们可以做的是重新分配 $ 来引用 jQuery 仅在该回调函数的范围内。这由 jQuery 提供帮助:每个 $(document).ready 回调函数都会被调用将 jQuery 构造函数作为第一个参数,因此您可以在函数中使用您选择的任何名称。

例如:

var $ = 'apples';

jQuery(document).ready(function() {
$('div'); // causes an error: "TypeError: string is not a function"
});

jQuery(document).ready(function($) {
$('div'); // works fine
});

此功能记录在 ready 的 jQuery API 中方法,在标题为“Aliasing the jQuery Namespace”的部分中。

关于javascript - jQuery 的 $ 在这个函数中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19837383/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com