书上不严谨之处:
为啥不严谨呢?
我们所说的”子元素”通常指的是 某元素的儿子元素。而图片上红线框里面说明了要查询子元素strong元素 ,但是图片红线框中的“(“p strong”)” 是要查询p元素中的后代 strong元素。
举例示例:
代码:
<!-- ************html部分**************** -->
<div>
<strong>div元素的儿子1</strong>
<strong>div元素的儿子2</strong>
<strong>div元素的儿子3</strong>
<li>
<strong>div元素的孙子1</strong>
</li>
<li>
<strong>div元素的孙子2</strong>
</li>
</div>
<!-- **************js部分****************** -->
<script type="text/javascript">
// 获得div元素中的后代strong元素
let strongs = document.querySelectorAll("div strong");
console.log("获得div元素中的后代元素strong元素 结果:");
console.log(strongs);//结果是:NodeList(5)
// 获得div元素中的子元素strong元素
let strongs2 = document.querySelectorAll("div>strong");
console.log("获得div元素中的子元素strong元素 结果:");
console.log(strongs2);//结果是:NodeList(3)
</script>
结果图:
书上的这个问题虽然无可厚非,但是从严谨的角度来讲,还是值得一提的,你怎么看呢?