Javascript 基于url中的哈希显示元素
我有一个页面/categories.html,包含大约50个p元素:Javascript 基于url中的哈希显示元素,javascript,jquery,html,css,hash,Javascript,Jquery,Html,Css,Hash,我有一个页面/categories.html,包含大约50个p元素: <p id='BCI'>Blue_colored_items</p> <p id='RCI'>Red_colored_items</p> ... 如果 是请求的url,依此类推 我应该如何让它工作?我可以更改整个html。您可以从window.location.hash属性获取值。然后可以隐藏所需的内容,但不包括指定的元素,如下所示: var hash='BCI';//win
<p id='BCI'>Blue_colored_items</p>
<p id='RCI'>Red_colored_items</p>
...
如果
是请求的url,依此类推
我应该如何让它工作?我可以更改整个html。您可以从window.location.hash属性获取值。然后可以隐藏所需的内容,但不包括指定的元素,如下所示: var hash='BCI';//window.location.hash; $'p'.nothash.hide; 蓝色物品
您可以从window.location.hash属性获取值。然后可以隐藏所需的内容,但不包括指定的元素,如下所示: var hash='BCI';//window.location.hash; $'p'.nothash.hide; 蓝色物品 红色物品 将任何现有哈希作为类添加到元素中,允许您使用CSS进行控制:
p {display:none;}
.BCI p#BCI {display: inline;}
.RCI p#RCI {display: inline;}
...
或者,您可以简单地基于哈希搜索,并显示它:
//此处仅需要StackOverflow的硬编码哈希,因此:
window.location.hash='BCI';
设p=document.getElementByIdwindow.location.hash.substring1;
如果p.style.display='inline';
p{显示:无;}
蓝色物品
红色物品
将任何现有哈希作为类添加到元素中,允许您使用CSS进行控制:
p {display:none;}
.BCI p#BCI {display: inline;}
.RCI p#RCI {display: inline;}
...
或者,您可以简单地基于哈希搜索,并显示它:
//此处仅需要StackOverflow的硬编码哈希,因此:
window.location.hash='BCI';
设p=document.getElementByIdwindow.location.hash.substring1;
如果p.style.display='inline';
p{显示:无;}
蓝色物品
红色物品
我刚刚发现效果很好<style>
p {display: none}
:target {display: block}
</style>
无论如何,谢谢你的回答,罗里和安德烈。我刚刚发现工作做得很好
<style>
p {display: none}
:target {display: block}
</style>
无论如何,谢谢你的回答,Rory和Andrei
<style>
p {display: none}
:target {display: block}
</style>