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

为什么没有看到效果

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>无标题文档</title>

</head>


<body>

<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");

  // 在此完成该函数

  var rChild=content.chileNodes;

  for(var i=0;i<rChild.length;i++){

      var x=content.removeChild(rChild[i])

      document.write("清除节点"+x)

  }

  

}

</script>


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




</body>

</html>


正在回答

1 回答

你的代码有错误,

var rChild=content.chileNodes;

var rChild=content.childNodes;//e和d

如果没有错了(再检查检查),多点几次,就有结果了

补充:

你的这种写法,同样的代码清除所有内容,不同的浏览器点击的次数不同,

因为

如果标签外的空白是一个元素,每删出一个结点的同时,content.childNodes的每个元素就变化一次(删除第一个,以后的每个元素向前移动),而i却一直在增大,导致点击一次元素不能删除完;

这样写能一次删除完,楼组可以参考一下,

var nodes = content.childNodes;

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

        content.removeChild(nodes[i]);

    }

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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468046    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

为什么没有看到效果

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