本帖最后由 clearwater 于 2020-3-11 20:33 编辑
某前端老师说:兄弟节点的元素如果要取的话,做不到兼容,除非自己封装一个函数。(第16-24行是老师封装的函数,其余的代码是我写的)
可是为什么26行输出的结果是null,而不是span?
div的下一个兄弟元素节点是span. 请问我哪里写错了?
(老师说兄弟元素节点,这个用得比较少。不过我想了解一下。)
[JavaScript] 纯文本查看 复制代码 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div>12</div>
<span>222</span>
<script>
var div = document.querySelector('div');
function getNextElementSibling(element) {
var el = element;
while (el = el.nextSibling) {
if (el.nodeType === 1) {
return el;
}
}
return null;
}
var i = getNextElementSibling('div');
console.log(i);
</script>
</body>
</html> |