【问题标题】:How do I get jquery & mootools to play nice?如何让 jquery 和 mootools 玩得更好?
【发布时间】:2010-05-14 03:02:52
【问题描述】:

我一直使用 Mootools 1.2.4 作为我选择的 JS 框架。我已将亚马逊的 Checkout 添加到我的一个页面中,他们将 jQuery 1.2.6 注入页面并弄乱了我的美元功能(除其他外)。

我可以控制 Mootools,但不能控制 jQuery。我宁愿不重写我现有的代码来适应 jQuery,因为亚马逊的 Checkout 是事后的想法和插件元素。

建议任何想法或建议。谢谢!

【问题讨论】:

    标签: jquery mootools compatibility amazon


    【解决方案1】:

    看看jQuery.noConflict()。如果他们正确编写了代码,就不会依赖$ 在全局范围内可用。

    对于您自己的代码,您可以通过将所有代码包装在一个闭包中来加强它以解决此类问题。我不知道prototype的$函数的全名是什么,但我假设它是Prototype

    alert ($ instanceof jQuery); // true
    
    (function($) {
        alert ($ instanceof Prototype);   // true
        // put all your Prototype code here
    
    })(Prototype);
    

    编辑:呃,将“原型”替换为“Mootools”...大脑今天无法工作

    【讨论】:

    • 非常感谢。 noConflict 正是我所需要的。至于函数封装,我会写我的代码来适应它。仅供参考,MooTools 命名空间是 document.id 再次感谢!
    • 如果你命名mootools,你不需要noConflict jquery(如果jquery自动拥有它就不会触及$),只有其中一个真正需要远离$,而不是同时时间:)
    猜你喜欢
    • 2017-08-31
    • 1970-01-01
    • 2012-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    相关资源
    最近更新 更多