javascript nextsibling功能

Was*_* A. 7 html javascript parent nextsibling

<html>
<body>
<script language="JavaScript">
function function1() {
   var m = document.getElementById("myNodeOne").nextSibling;
   m.innerHTML = "asdfsdf";
}
</script>
<p>This PARAGRAPH has two nodes, 
    <b id="myNodeOne">Node One</b>, and 
    <b id="myNodeTwo">Node Two</b>.
</p>
<p></p>
<button onclick="function1();">Node One has a Next Sibling</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这应该在第二段标签中打印"asdfsdf".但它不起作用.

hto*_*niv 16

尝试使用nextElementSibling而不是nextSibling

function function1() {
var m = document.getElementById("myNodeOne").nextElementSibling;
m.innerHTML = "asdfsdf";
}
Run Code Online (Sandbox Code Playgroud)

它的工作原理是因为它只提取HTML元素.


ant*_*rat 1

这是因为第一个 div 的下一个兄弟节点是文本节点:, and

文本节点没有innerHTML属性

您需要使用:

document.getElementById("myNodeOne").nextSibling.nextSibling
Run Code Online (Sandbox Code Playgroud)