0

我想在功能区上添加一个超链接。我能够将超链接添加到现有的 div。由于我执行的每个操作都会刷新功能区,因此超链接正在增加。

我怎样才能清除 div 并只使一个链接可用。

我正在使用以下代码:

var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a'); 
aTag.setAttribute('href',"yourlink.htm");  
aTag.innerHTML = "link text";
mydiv.appendChild(aTag); 
4

6 回答 6

2

jQuery 有empty()函数。如果你只是使用纯 JS,你总是可以在添加标签mydiv.innerhtml = ""之前添加该行。<a>

于 2012-08-10T05:25:55.347 回答
1

这可能对你有用:

var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a'); 
aTag.setAttribute('href',"yourlink.htm");  
aTag.innerHTML = "link text";
mydiv.innerHTML="";
mydiv.innerHTML=aTag; 
于 2012-08-10T05:26:26.500 回答
0

尝试这个

var aTag = "<a href='yourlink.htm' > </a>";
document.getElementById("myDiv").innerHtml = aTag ;
于 2012-08-10T05:42:07.117 回答
0

假设功能区“myDiv”

mydiv.innerHTML = ""

mydiv.appendChild(aTag);
于 2012-08-10T05:23:53.123 回答
0
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');

aTag.setAttribute('href',"yourlink.htm");
aTag.innerHTML = "link text";

if( mydiv.firstChild ){
  mydiv.replaceChild(aTag, mydiv.firstChild);
}else{
  mydiv.appendChild(aTag);
}
于 2012-08-10T05:34:45.793 回答
0

此方法不仅删除子(和其他后代)元素,还删除匹配元素集中的任何文本。这是因为,根据 DOM 规范,元素中的任何文本字符串都被视为该元素的子节点。考虑以下 HTML:

<div class="container">
  <div class="hello">Hello</div>
  <div class="goodbye">Goodbye</div>
</div>

我们可以针对任何要删除的元素:

$('.hello').empty();

这将导致删除 Hello 文本的 DOM 结构:

<div class="container">
  <div class="hello"></div>
  <div class="goodbye">Goodbye</div>
</div>
于 2012-08-10T05:37:03.640 回答