【发布时间】:2012-11-26 14:54:49
【问题描述】:
我有这段代码可以在 FF、Chrome、Safari 甚至 IE9 中运行。自然,它在 IE8 中不起作用。这是使用 Javascript 在两个 div 上显示/隐藏。我对 JS 不是很精通,所以任何帮助都将不胜感激。
Javascript 函数:
function showonlyone(thechosenone) {
var subscriberinfo = document.getElementsByTagName("div");
for(var x=0; x<subscriberinfo.length; x++) {
name = subscriberinfo[x].getAttribute("class");
if (name == 'subscriberinfo') {
if (subscriberinfo[x].id == thechosenone) {
subscriberinfo[x].style.display = 'block';
} else {
subscriberinfo[x].style.display = 'none';
}
}
}
}
HTML 代码:
<ul class="options">
<div class="subscriber-options">
<a href="javascript:showonlyone('subscriberinfo1');" >Account</a>
</div>
<div class="subscriber-options">
<a href="javascript:showonlyone('subscriberinfo2');" >Subscriber Options</a>
</div>
</ul>
<!-- options -->
<div class="subscriberinfo" id="subscriberinfo1">Div #1</div>
<!-- subscriberinfo1 -->
<div class="subscriberinfo" id="subscriberinfo2" style="display: none;">Div #2</div>
【问题讨论】:
-
“XYZ 功能在 IE8 中不起作用” - 您还有什么期望?
-
根据a forum post,您也许可以使用 CSS 类来完成此操作。
-
不推荐使用
javascript:方案链接。 -
@Rocketpig 你能在IE8不工作时检查它是否处于怪癖模式。
-
对不起,我应该详细说明。我在兼容模式下运行 IE9。我在这台机器上没有 IE8 的本机副本。
标签: javascript show-hide