jQuery Accordion停止了工作

时间:2013-05-13 23:19:51

标签: javascript jquery-ui-accordion

在我的FTP客户端乱七八糟之后,我的Wordpress'header.php被删除了,所以我需要重新编码它,一个以前工作的jQuery脚本停止工作,但我找不到问题。

这是一个手风琴脚本,可以同时打开多个部分:

<script type="text/javascript">

$(document).ready(function() {
        $(".post-list").addClass("ui-accordion ui-accordion-icons ui-widget ui-helper-reset")
            .find("h3.entry-title")
            .addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-top ui-corner-bottom")
            .hover(function() { $(this).toggleClass("ui-state-hover"); })
            .click(function() {
              $(this)
                .toggleClass("ui-accordion-header-active ui-state-active ui-state-default ui-corner-bottom")
                .next().toggleClass("ui-accordion-content-active").slideToggle();
              return false;
        })
        .next()
        .addClass("ui-accordion-content  ui-helper-reset ui-widget-content ui-corner-bottom")
        .hide();

        var d= 0;
        $('.post').each(function() {
            $(this).delay(d).fadeIn(300);
            d += 100;
        });
});

</script>

它应该找到H3,添加类并隐藏以下div。我把它放在我的header.php的头部区域,所有必要的库都被加载了,但不知何故,脚本似乎根本不起作用。

任何人都可以发现错误或建议脚本实现可能出现的问题吗?

注意:我在本地虚拟网站上尝试了完全相同的脚本,但它确实有效。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您在控制台上遇到“找不到变量:$”错误,则表示jQuery未加载或与任何其他库冲突。

首先检查控制台上是否存在window.$window.jQuery

并尝试使用jQuery代替$

<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function() {
        jQuery(".post-list").addClass("ui-accordion ui-accordion-icons ui-widget ui-helper-reset")
            .find("h3.entry-title")
            .addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-top ui-corner-bottom")
            .hover(function() { jQuery(this).toggleClass("ui-state-hover"); })
            .click(function() {
              jQuery(this)
                .toggleClass("ui-accordion-header-active ui-state-active ui-state-default ui-corner-bottom")
                .next().toggleClass("ui-accordion-content-active").slideToggle();
              return false;
        })
        .next()
        .addClass("ui-accordion-content  ui-helper-reset ui-widget-content ui-corner-bottom")
        .hide();

        var d= 0;
        jQuery('.post').each(function() {
            jQuery(this).delay(d).fadeIn(300);
            d += 100;
        });
});