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

发布于 2024-08-02 17:08:05 字数 861 浏览 2 评论 0原文

我的朋友被要求查看她的网站,其中使用 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>

Is there a way to compose this that is compatible with slimbox?她正在使用 slimbox 在某些使用此功能的页面上显示画廊。

My friend is asked me to look over her site where there is an error on pages that use slimbox-- an unrelated Jquery toggle function breaks— here's the code:

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

This code works fine when slimbox and mootools scripts are not present, but having either of those scripts load breaks it— the dt elements are not hidden and clicking on their respective dds doesn't toggle them hidden. Here is the error message from Safari's JS console:

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

This error only appears on pages that load slimbox or mootools, like so:

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

Is there a way to compose this that is compatible with slimbox? She is using slimbox to display galleries on some pages that use this function.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

記憶穿過時間隧道 2024-08-09 17:08:05

这篇文章应该有所帮助。基本上,您需要调用 noConflict 并使用 jQuery() 来调用 jQuery 函数。

This article should help. Basically you need to call noConflict and use jQuery() to call your jQuery functions.

杀手六號 2024-08-09 17:08:05

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

This error appears because of using $(".cat_nav dd"), you must use $$(".cat_nav dd"), because the $() function in mootools only take element id not CSS selector.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文