javascript - 通过引用来自外部页面的 anchor 来扩展隐藏的 div

标签 javascript anchor hidden

我有一个脚本,它在页面加载时隐藏(显示:无)列表中的某些 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>并将样式显示更改为 block 。

关于javascript - 通过引用来自外部页面的 anchor 来扩展隐藏的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1103406/

相关文章:

带有伪 anchor 和重复内容/SEO 的网址

javascript - 将 Javascript 输入隐藏字段的值设置为在另一个输入文本字段中输入的值

javascript - 刷新谷歌地图会阻止添加标记的能力

javascript - 使用 ocLazyLoad 插件加载组件和其他依赖项

javascript - 如何访问未附加到 URL 的散列?

javascript - 如何使用 Ajax 发送和接收隐藏值

css - 完全隐藏隐藏了一些溢出的元素

javascript - 错误代码1cordova插件文件传输android

javascript - 构建解析 URI 的 Node.js 服务器

jquery - 单击时阻止 jquery TABS 向上跳跃/滚动?