mootools和原型冲突

时间:2011-07-28 15:40:26

标签: mootools prototypejs conflict

这是我的代码它一直不起作用,如果我删除原型脚本文件,mootools工作,如果我删除mootools原型工程!这是代码:

<script type="text/javascript" src="js/mootools.js"></script> 
<script type="text/javascript" src="js/imageMenu.js"></script> 
<script type="text/javascript" src="js/prototype.js"></script>

<script type="text/javascript">

            window.addEvent('domready', function(){
                var myMenu = new ImageMenu($$('#imageMenu a'),{openWidth:310, border:2, onOpen:function(e,i){alert(e);}});
            });
</script>

值得一提的是,当我尝试一次时,原型与MT一起工作,但原型中的Ajax.Updater仍无效。

我确实在这里检查了大部分有关问题的主题,但仍然输了!

1 个答案:

答案 0 :(得分:0)

我不确定为什么你甚至想要一起使用原型和mootools。这当然有资格作为框架的滥用......选择一个并坚持下去。如果你不能在一个或另一个之间做出选择,那么首先要假设你甚至需要一个框架,然后从那里决定哪一个适合你的需要。仅仅为了拥有它而使用一个(或几个)是一个糟糕的计划。

两个框架都通过扩展DOM来实现其功能,因此存在冲突并不奇怪。两者都使用$作为其扩展功能的入口点。堆叠框架时获得的功能重复数量几乎排除了将它们结合使用,更不用说加载大量代码不需要的额外开销。

所有这些,你可以查看this article。这是mootools建议与其他框架兼容/解决冲突。您将注意到,在本文的第一段中,作者给出了我在这里的相同警告 - 不要堆叠框架。这是你唯一的选择,非常少,非常具体的情况,否则你真的需要考虑为什么采取这种方法。