我有一个包含4个隐藏div的页面。如果我想链接到它们,我会这样做
<a href="#about" class="nav_text" id="about_link">About</a>
由于我为其编写的Javascript / jQuery,这显示了关于div并隐藏了其他内容。
然而,我的问题出现在用户的地址栏中显示为/index.php#about_content。如果你手动输入,它不会显示about_content div,因为它是隐藏的。如果手动输入div,我怎样才能显示div?
答案 0 :(得分:2)
读取当前哈希并在文档准备就绪时显示。
$(document).ready(function() {
$(window.location.hash).show();
});
答案 1 :(得分:1)
您需要在窗口上收听hashchange
event。完成后,从哈希中加载元素,如果匹配,则显示正确的<div>
。如果哈希中存在某些内容并且执行相同操作,您还需要检查页面的初始加载。
不仅仅是IE8 +兼容,因为IE7及以下版本不支持hashchange
事件。如果你想支持它们,你需要使用其中一个技巧(或plugins)。
PS您可以使用location.hash