我刚学习JavaScript,请多包涵。我试图在单击时使一个span出现,我已经实现了这个功能,但我需要在另一个链接被单击后将它隐藏起来。这是我目前的代码。
<html>
<head>
<style>
aside.apps{
position:relative;
}
span.socialApp{
visibility:hidden;
position:absolute;
top:20px;
left: 0;
background-color:#e9e9e9;
}
</style>
<script>
var state = 'hidden';
function showApp(a) {
if (state == 'visible') {
state = 'hidden';
}
else {
state = 'visible';
}
if (document.getElementById && !document.all) {
x = document.getElementById(a);
x.style.visibility = state;
}
}
</script>
</head>
<body>
<aside class="apps">
<a href="javascript://" onclick="showApp('app1');">link1</a>
<span class="socialApp" id="app1">stuff goes here1</span>
<a href="javascript://" onclick="showApp('app2');">link2</a>
<span class="socialApp" id="app2">stuff goes here2</span>
<a href="javascript://" onclick="showApp('app3');">link3</a>
<span class="socialApp" id="app3">stuff goes here3</span>
<a href="javascript://" onclick="showApp('app4');">link4</a>
<span class="socialApp" id="app4">stuff goes here4</span>
</aside>
</body>
</html>
目前,当点击link1时,app1会出现,然后再点击link2时,app2会覆盖在link1上面。当关闭link2后,link1仍然可见。我需要检查所有4个元素,并使除当前选择外的所有元素隐藏起来。