0

我的 html 中有四个不同的 div,我想隐藏它们,然后根据我点击的链接显示我选择的一个。但是,我无法隐藏它们。它不起作用,我希望各个 div 中的任何内容都显示在链接下,而不是像现在这样显示在它们旁边。我最大的困难是隐藏我的div,有什么解决办法吗?

Javascript

function show1(){
var minaP = document.getElementByID("one");
minaP.style.visibility = "visible";
}

function show2(){
var minaP = document.getElementById("two");
minaP.style.visibility = "visible";
}

function show3(){
var minaP = document.getElementById("three");
minaP.style.visibility = "visible";
}

function show4(){
var minaP = document.getElementById("four");
minaP.style.visibility = "visible";
}

function init() {

var minaDiv = document.getElementsByTagName("div");
for(i=0; i<minaDiv.length; i++){
  minaDiv[i].style.visibility = "hidden";
}

var minaA = document.getElementsByTagName("a");
for(i=0; i<minaA.length; i++){
  if(document.getElementById == "1"){
    minaA.onclick = show1;
  }
}

}

window.onload = init;

html

<div>
<ul class="meny">
<li><a href="#" id="1">Utvärdering/Feedback</a></li>
<li><a href="#" id="2">Kontakt</a></li>
<li><a href="#" id="3">Öppettider</a></li>
<li><a href="#" id="4">Om Asperöd</a></li>
</ul>
</div>

<div id="one">
<p><b>Aperåd Äventyrsland</b></p> 
<p>Växel: 0200-123456999 (kl.08:30-15)</p>
<p>Stora Vägen 140</p>
<p>289 22 Aperöd</p>
<p>Skicka oss din <a href="#">fråga</a></p>
</div>
<div id="two">
<p>Du kan kontakta oss på följande nummer: 
<br> 040-123456
</p>
<p> Du kan även mejla oss:
<br> aperöd@hotmail.com
</p>
</div>
<div id="three">
<p>Vi har följande öppettider:</p>
<p> Mån-Fre: 10:00 - 20:00 </p>
<p> Lör: 10:00 - 18:00 </p>
</div>
<div id="four">

Aperöd är en fin park för alla möjliga personer。Vi erbjuder en massa, men det kostar 500kr for
att delta för en dag。

4

2 回答 2

1

你需要使用style.display = 'none',而不是style.visibilitystyle.display = 'block''inline'来显示它们

于 2013-02-05T23:25:02.637 回答
1

也许你应该考虑使用/学习 jQuery。它有助于减少代码大小,并且有很多精美的动画;)

这是一个快速演示.hide() .show()

http://jsfiddle.net/yFhX5/

于 2013-02-05T23:50:08.827 回答