8

我在让 jQuery 与 DokuWiki 配合使用时遇到了一些麻烦——有人已经成功地做到了这一点吗?

目前,包括 jQuery 在内的各种 JS 功能中断,我无法追踪问题的根源。哪些东西会与 jQuery 发生冲突?

4

4 回答 4

16

我个人对 DokuWiki 并不熟悉,但如果在包含 jQuery 时出现问题,那么它可能与 jQuery 中的“$”变量发生冲突。你可以使用 jQuery 的 noConflict 方法来解决这个问题,更多信息在这里: http://docs.jquery.com/Using_jQuery_with_Other_Libraries

另请参阅此 Stack Overflow 帖子: jQuery 和原型冲突

于 2009-01-29T04:23:39.463 回答
6

您通常可以在加载后立即使用以下内容来避免任何 jQuery 冲突jquery.js

jQuery.noConflict();

然后,它不会覆盖$变量,这是这些 JS 库冲突中最常见的问题根源。不过,您需要使用 调用 jQuery 函数jQuery。例子:

jQuery(function() { ... }); // $(function ...
jQuery(".klass").hide();    // $(".klass" ...
于 2009-01-29T04:21:23.430 回答
6

还有一个将 JQuery 添加到 DokuWiki 的插件:http: //www.dokuwiki.org/plugin :jquery

于 2009-09-11T13:35:09.617 回答
0
jQuery.noConflict();

然后你可以使用jQuery("your element selector")or 代替$. 要在您的代码中使用 nicer $,只需像这样围绕它包装一个函数:

jQuery.noConflict()
(function($) {
  $("your element selector").whatever();
})(jQuery)

将 jquery 函数包装在闭包中的好处是什么的答案中描述的其他好处?

于 2011-08-27T17:07:11.727 回答