我有一个脚本,可以在页面加载时隐藏(显示:无)列表中的某些 div。 Div 内容代表一本书的描述,整个列表是某种参考书目。每个div都有一个id,例如“div1”,“div2”等。
<ul>
<li><div class="hidden" id="div1"></li>
<li><div class="hidden" id="div1"></li>
...
</ul>
还有另一个带有菜单的页面,其中包含指向每个这样的 div 的锚定链接:
<ul>
<li><a href="bibl.html#div1"></li>
<li><a href="bibl.html#div2"></li>
...
</ul>
我希望当单击另一个页面上的链接时隐藏的 div 自动展开。我尝试了一些 window.location.href 的东西,但无济于事 - 我的 JS 还很弱。据我了解,它应该获取当前 url 并检查“#”的逻辑,然后搜索 id 属性右侧部分的元素。非常感谢好心人。)
您可以在目标页面上执行以下操作:
window.onload = function() {
var hash = window.location.hash; // would be "#div1" or something
if(hash != "") {
var id = hash.substr(1); // get rid of #
document.getElementById(id).style.display = 'block';
}
};
本质上,您检查页面加载窗口的 href 是否附加了哈希值。如果是这样,您会发现<div>
并将样式显示更改为块。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)