3

要解决 jQuery 和原型之间的冲突,
除了要求 jQuery 通过

jQuery.noConflict

并使用jQuery代替$('code').code;

难道我们不能要求原型$下台解决吗?

4

3 回答 3

8

$无论如何,您都应该命名您的代码,并且 jQuery 为您提供了在同一步骤中重新声明代码的好机会:

jQuery.noConflict();

jQuery(function ($) {
    // $ is the jQuery object in here
    // and doesn't conflict with Prototype
});

如此处所述。

我不知道您是否可以让 Prototype “下台”,但这是一个非常优雅且有效的解决方案。

于 2010-02-03T05:58:36.177 回答
0

与 jQuery 相比,PrototypeJS 向全局 JavaScript 命名空间添加了更多内容。例如,它增加了以下含义:Ajax, $, $$, $F, Abstract, Form, $A, $H, $R, $w. 您可以在api.prototypejs.org查看完整的类和实用程序列表。

所以你得到的建议是正确的,jQuery.noConflict()PrototypeJS 没有简单的等价物。

于 2010-02-06T03:44:00.257 回答
0

我在http://api.prototypejs.org/中找不到任何可以返回的函数$,就像noConflict()在 jQuery 中一样。

我想知道,您需要什么功能才能仍在使用原型?jQuery 可能具有该功能的插件。在同一页面中使用 2 个库会使您的页面因每个库的大小而臃肿。

于 2010-02-03T05:59:33.743 回答