gpt4 book ai didi

jQuery 无冲突

转载 作者:行者123 更新时间:2023-12-01 06:17:41 24 4
gpt4 key购买 nike

在这个简单的例子中:

var myFunction = function(obj) {
console.log($(obj));
}

我正在使用 $.如果我使用:

jQuery.noConflict();
var myObj = {X:1};
myFunction(myObj);

那么 $ 就不再有效了。

但是如果我将 myFunction 包裹在里面

jQuery(function($) {
var myFunction = function(obj) {
console.log($(obj));
}
});

然后就找不到了。 myFunction 位于一个单独的脚本中,因此我无法将所有内容包装在一个巨大的 jQuery(function($) {} 中。

最佳答案

试试这个:

( function($) {
window.myFunction = function(obj) {
console.log($(obj));
}
})(jQuery);

单独的文件:

myFunction({X:1});

不同之处在于,您的代码会立即执行,而不是在 dom 准备好之后执行,并且您将函数放置在全局上下文(窗口)中。因此它将在任何地方都可用。

我不知道你在做什么,但在这种情况下,你可能会发现 JQuery 插件更适合你:

( function($) {
$.fn.myFunction = function(obj) {
console.log(this);
}
})(jQuery);

单独的文件:

jQuery({X:1}).myFunction();

当然,$( {X:1} ) 可能会用 JQuery 做奇怪的事情 - 我以前从未尝试过!

关于jQuery 无冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7026634/

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