混合jQuery版本

时间:2010-11-04 18:22:53

标签: jquery

我有一个脚本,我在浏览时插入HTML页面。我的脚本使用最新版本的jQuery,我遇到的问题是已经在页面上声明了旧版jQuery的人。我一直在将我的jQuery对象重新分配给我自己的varialbe以避免冲突,但我想知道:是否可以将jQuery插入到我自己的对象中而无需重新分配变量?我的意思是来自:

var myJquery = jQuery.noConflict(true);

类似

myCustomObject.prototype.jQuery = //how do i populate this?

myCustomObject.jQuery.blahblah();

我想让我的jQuery版本成为我的javascript对象的一员。

1 个答案:

答案 0 :(得分:2)

如果您在不修改jQuery核心的情况下使用jQuery核心,则无法执行此操作...它会覆盖window.jQuery对象本身,问题所在的位置。第一个示例:重新声明window.jQuery并通过代理window.jQuery.prototype删除页面中的所有插件。

在包含之前检查window.jQuery是否存在...否则你需要更改jQuery核心,特别是this line

return (window.jQuery = window.$ = jQuery);

类似于:

return (myCustomObject.jQuery = jQuery);

在这种情况下,最后的jQuery是一个变量,在当时的范围内,但尚未搞砸。