为了账号安全,请及时绑定邮箱和手机立即绑定

getElementById("content")获取的是<div>的id,能不能换成getElementstagName("div")获取<div>?有点搞不清

<div id="content">

  <h1>html</h1>

  <h1>php</h1>

  <h1>javascript</h1>

  <h1>jquery</h1>

  <h1>java</h1>

</div>


<script type="text/javascript">

function clearText() {

  var content=document.getElementById("content");

  for(var i=content.childNodes.length-1;i>=0;i--){

      content.removeChild(content.childNodes[i]);

  }

  

}

</script>


<button onclick="clearText()">清除节点内容</button>


正在回答

1 回答

换成getElementstagName("div")[0],可以使用,因为tag相同的元素可能不止一个这个时候就需要用getElementsByTagName("a")[0](返回第一个元素)来获得对象的引用,在一个文档中相同id名称的元素只能有一个,所以它返回的就是一个对象,也就是说可以直接用


0 回复 有任何疑惑可以回复我~
#1

零玫瑰 提问者

我也觉得差不多,可是换了就不行了
2017-01-16 回复 有任何疑惑可以回复我~
#2

抬山 回复 零玫瑰 提问者

TagName
2017-01-16 回复 有任何疑惑可以回复我~
#3

零玫瑰 提问者 回复 抬山

→_→是的,不行
2017-01-16 回复 有任何疑惑可以回复我~
#4

抬山 回复 零玫瑰 提问者

我也是才学....这是我的代码,可以用,你看一下吧 <script type="text/javascript"> function clearText() { var content=document.getElementsByTagName("div")[0]; // 在此完成该函数 var tt=content.childNodes; for(var i=tt.length-1;i>=0;i--) { var x=content.removeChild(tt[i]); } } </script>
2017-01-16 回复 有任何疑惑可以回复我~
#5

零玫瑰 提问者 回复 抬山

原来是content.childNodes的原因,前面那个直接在循环里表示,你的要放在循环外面才能实现,跪求解释
2017-01-16 回复 有任何疑惑可以回复我~
#6

抬山 回复 零玫瑰 提问者

都可以的,我把你的代码放到我这里也可以用
2017-01-16 回复 有任何疑惑可以回复我~
查看3条回复

举报

0/150
提交
取消

getElementById("content")获取的是<div>的id,能不能换成getElementstagName("div")获取<div>?有点搞不清

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信