在URL中使用锚点显示div

时间:2015-05-13 14:23:56

标签: javascript jquery wordpress toggle

我正在使用jQuery-collapse plugin隐藏/显示帖子的正文内容,并希望每个帖子也可以通过网址访问。

<div id="<?php the_slug(); ?>" data-collapse>
   <div id="collapse">

        //  Toggle content

   </div>


   <div class="main-content">

        // Hidden content       

   </div>
</div>

我正在尝试的方法是将post slug称为帖子ID(所以我可以在url中使用#the_slug),找到它,然后给collapser的第一个子节点“open”(其中插件应该识别)。如下:

window.onload = function() {
var hash = window.location.hash;
if(hash != "") {
    var id = hash.substr(1);
    var d = document.getElementById(id);
    d.firstChild.className = "open";
} 
};

只要将类应用于第一个子节点,它就可以正常工作,但插件不会对其进行确认(如果我将class="open"添加到标记中,则会这样做。)

帮助理解为什么/其他选项非常受欢迎。

2 个答案:

答案 0 :(得分:0)

如果您使用if(hash != "") { $(hash).addClass("open"); } ,则可以执行以下操作:

msiexec.exe

答案 1 :(得分:0)

问题是lib不会监听类名更改。

插件的API

{{1}}

使用此代码而不是className赋值。