10

有没有办法同时使用 jquery 和 scriptaculous js 文件?

我试图实现 cakephp 框架的自动完成功能,它需要 js 文件、prototype.js、scriptaculous.js、effects.js 和 controls.js。

我还在需要 jquery.js 文件的应用程序中使用 JQuery 函数。

如果我包含 jquery.js 文件,则自动完成功能不起作用。但我还需要 jquery.js 文件来实现我的 jquery 函数。

那么有什么方法可以同时使用这两个js文件吗?

4

2 回答 2

22

您需要在 jQuery 中启用无冲突模式,请参阅:

http://docs.jquery.com/Using_jQuery_with_Other_Libraries

从上面的链接:

<html>
 <head>
   <script src="prototype.js"></script>
   <script src="jquery.js"></script>
   <script>
     jQuery.noConflict();

     // Use jQuery via jQuery(...)
     jQuery(document).ready(function(){
       jQuery("div").hide();
     });

     // Use Prototype with $(...), etc.
     $('someid').hide();
   </script>
 </head>
 <body></body>
</html>

但是,您仍然需要加载 Prototype 才能使 Scriptaculous 工作。作为一个建议,如果您只是(或主要)将那些其他库用于自动完成器小部件,您可能想尝试jQuery 的自动完成插件。

于 2009-08-04T11:08:46.400 回答
1

做 jQuery 和 Scriptaculous 最简单的方法是:

var $j = jQuery.noConflict();

并为 jQuery 使用$j而不是$

$j('#id'), 例如。

于 2013-07-16T08:41:11.077 回答