我有一个脚本,我在浏览时插入HTML页面。我的脚本使用最新版本的jQuery,我遇到的问题是已经在页面上声明了旧版jQuery的人。我一直在将我的jQuery对象重新分配给我自己的varialbe以避免冲突,但我想知道:是否可以将jQuery插入到我自己的对象中而无需重新分配变量?我的意思是来自:
var myJquery = jQuery.noConflict(true);
类似
myCustomObject.prototype.jQuery = //how do i populate this?
myCustomObject.jQuery.blahblah();
我想让我的jQuery版本成为我的javascript对象的一员。
答案 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
是一个变量,在当时的范围内,但尚未搞砸。