简而言之,我正在尝试使用带有Javascript函数的HREF菜单来显示DIV。但是,我担心的是,虽然我可以有两个单独的DIV,一个启用Javascript,一个启用No JAvascript,但我不想在我的页面上复制原始内容(因为蜘蛛将索引显示:无html)
我不熟悉javascript的功能和最佳实践。我的直觉是在存在javascript时将字符串替换为特定id样式标记的DIV ..
即逻辑,如果启用了javascript,则将样式标记的文本替换为display = none(对于特定ID)
另外 - 有没有办法使用javascript进行非特定的操作。如果我有contentid1,contentid2,contentid3,contentid4,contentid5,contentid6我可以使用,通过正则表达式或等效于contentid 2-6
我会在多个有争议的网页上使用它。我不知道我是否应该创建一个javascript条件样式,因为我不确定该样式将如何应用于多个ID(在此处看到) Hide html only when Javascript is available
继承我当前的代码
<script type="text/javascript">
function showHide(d)
{
var onediv = document.getElementById(d);
var divs=['content1','content2','content3','content4'];
for (var i=0;i<divs.length;i++)
{
if (onediv != document.getElementById(divs[i]))
{
document.getElementById(divs[i]).style.display='none';
}
}
onediv.style.display = 'block';
}
</script>
然后这是我的菜单
<ul>
<li><a href="javascript:showHide('content1');">link1</a></li>
<li><a href="javascript:showHide('content2');">link2</a></li>
<li><a href="javascript:showHide('content3');">link3</a></li>
<li><a href="javascript:showHide('content4');">link4</a></li>
</ul>
然后这是我的内容(注意,我默认将content1 div保留为
<div id="content1" >Content</div>
<div id="content2" style="display: none;">Stuff</div>
<div id="content3" style="display: none;">Things</div>`
如果可能的话,我想避免闪烁,如果可能的话,请刷新页面。就像是否存在一个条件,以便content2 +将inlinestyle更改为隐藏。如果没有javascript,我的paeg就变得非常非常长。 ?
抱歉-散漫。累了,患有肺炎:)