在遍历一个div节点时用了createNodeIterator()方法报错
css.html:9 Uncaught TypeError: Failed to execute 'createNodeIterator' on 'Document': parameter 1 is not of type 'Node'.
at css.html:9
代码是
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript">
var div = document.getElementById("div1");
var iterator = document.createNodeIterator(div, NodeFilter.SHOW_ELEMENT, null, false);
var node = iterator.nextNode();
while(node !== null){
alert(node.tagName)
node = iterator.nextNode();
}
</script>
</head>
<body>
<div id="div1">
<p><b>Hello</b>World!!!</p>
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
</ul>
</div>
</div>
</body>
</html>
请指教
应该是脚本执行的时候,还没有
<div id="div1">
,var div = document.getElementById("div1");
获取到的其实是空值,document.createNodeIterator
的第一个参数是不能为空的。把脚本放到尾部试试。