原型/ Mootools冲突问题
所以我有一个使用Prototype和Mootools AJAX脚本的页面。
还有更多的Mootools Prototype,所以我想知道Prototype是否有类似jQuery的函数$j = jQuery.noConflict();
我可以用来重新定义Prototype的$别名?
谢谢!
最新版本的MooTools没有冲突模式。 不幸的是,Prototype没有,这意味着$
必须绑定到Prototype。
要启用美元安全模式,请升级您的MooTools版本,并确保在Prototype之后包含MooTools。
这样做之后, $
将被绑定到Prototype。 在MooTools脚本中,将所有$
引用替换为document.id
。
// Before var X = new Class({ initialize: function(element){ this.element = $(element); } }); // After var X = new Class({ initialize: function(element){ this.element = document.id(element); } });
或者你可以使用一个闭包:
(function(){ var $ = document.id; this.X = new Class({ initialize: function(element){ this.element = $(element); } }); })();
有关美元安全模式的更多信息,请访问MooTools的博客:
http://mootools.net/blog/2009/06/22/the-dollar-safe-mode/
我有一个非常简单的解决方案: