第一个JavaScript函数/链接停止工作



我对JavaScript相当陌生,我正在尝试做一个简单的函数,其中我的div可以通过点击链接来更改。一切都很好,除了当我再次点击我的第一个链接,它停止工作。其他人继续工作。这是我的代码;我希望有人能帮助我!

<script>
function changedivVIDEO(){
var div = document.getElementById("fw14video");
div.innerHTML = "<div id='main2'>Hello</div>";
}
function changedivCAMPAIGN(){
var div = document.getElementById("fw14campaign");
div.innerHTML = "<div id='main3'>Hello</div>";
}
function changedivRUNWAY(){
var div = document.getElementById("fw14campaign");
div.innerHTML = "<div id='main4'>Hello</div>";
}

</script>
<div id="main">
<div id="fw14video"></div>
<div id="fw14campaign"></div>
<div id="fw14runway"></div>
<div id="fw14runway"></div>
</div>

<p><a href="javascript:changedivVIDEO();"><h3>VIDEO</h3></a></p>
<p><a href="javascript:changedivCAMPAIGN();"><h3>CAMPAIGN</h3></a></p>
<p><a href="javascript:changedivRUNWAY();"><h3>RUNWAY</h3></a></p>
<p><a href="javascript:changedivACCESSORIES();"><h3>ACCESSORIES</h3></a></p>
</div>  

我做了一个例子,填补了我认为缺失的细节:

<div id="fw14video"></div>
<div id="fw14campaign"></div>
<a href="" onclick="changediv1();">changediv1</a>
<a href="" onclick="changediv2();">changediv2</a>
<a href="" onclick="changediv3();">changediv3</a>
<script>
function changediv1(e){
  var div = document.getElementById("fw14video");
  div.innerHTML = "<div id='main2'>div1</div>";
  e.preventDefault();
}
function changediv2(e){
  var div = document.getElementById("fw14campaign");
  div.innerHTML = "<div id='main3'>div2</div>";
  e.preventDefault();
}
function changediv3(e){
  var div = document.getElementById("fw14campaign");
  div.innerHTML = "<div id='main4'>div3</div>";
  e.preventDefault();
}
</script>

按预期工作。我使用e.p preventdefault()使其不跟随链接,并设置文本不同,这样你就可以知道哪个被点击了。一些问题:

  • 你的意思是id要不同吗?
  • 你是如何将函数绑定到链接上的?(我用的是onclick)

我认为:

function changedivRUNWAY(){
var div = document.getElementById("fw14campaign");
div.innerHTML = "<div id='main4'>Hello</div>";
}
应:

function changedivRUNWAY(){
var div = document.getElementById("fw14runway");
div.innerHTML = "<div id='main4'>Hello</div>";
}

作为初学者…然后,如果你发布的代码中没有其他东西缺失,就会丢失。

最新更新