Jquery切换功能在包含mootools或slimbox脚本的页面上中断

时间:2009-08-28 02:44:39

标签: jquery null mootools toggle slimbox

我的朋友被要求查看她的网站,其中使用slimbox的页面出现错误 - 一个无关的Jquery切换功能中断 - 这里是代码:

$(function() {
    $(".cat_nav dd").hide();
    $(".cat_nav dt").click(function() {
        $(this).next().toggle();
        return false;
    });
});

当slimbox和mootools脚本不存在时,此代码可以正常工作,但是让这些脚本中的任何一个加载中断 - dt元素不会被隐藏,点击它们各自的dd不会将它们隐藏起来。以下是Safari JS控制台的错误消息:

TypeError: Result of expression '$(".cat_nav dd")' [null] is not an object.

此错误仅出现在加载slimbox或mootools的页面上,如下所示:

<script type="text/javascript" src="/js/mootools.js" charset="utf-8"></script>
<script type="text/javascript" src="/js/slimbox.js" charset="utf-8"></script>

有没有办法构建与slimbox兼容的?她正在使用slimbox在一些使用此功能的页面上显示画廊。

2 个答案:

答案 0 :(得分:3)

This article应该有所帮助。基本上你需要调用noConflict并使用jQuery()来调用你的jQuery函数。

答案 1 :(得分:1)

由于使用$(".cat_nav dd")而出现此错误,您必须使用$$(".cat_nav dd"),因为mootools中的$()函数只使用元素ID而不是CSS选择器。