我有一个名为“ myDiv”的div元素。如何通过DOM操作获得“ myDiv”的第n个孩子?标记:
function revealNibble(n) {
//Do something here...
var elements=document.getElementById('myDiv').children;
for(var i=1;i<=elements.length;i++){
if(n===i){
var output=elements[i].innerText || elements[i].textContent;
document.getElementById('output').innerHtml=output;
}
}
}Run Code Online (Sandbox Code Playgroud)
<body>
<div id="myDiv">
<p>One</p>
<p>Two</p>
<p>Three</p>
<p>Four</p>
<p>Five</p>
</div>
<hr/>
<div id="output"></div>
</body>
Run Code Online (Sandbox Code Playgroud)
我的代码不起作用!!!
小智 5
您可能正在寻找NodeList.item():
var elements=document.getElementById('myDiv').children
elements.item(n)
Run Code Online (Sandbox Code Playgroud)
请参阅:https://developer.mozilla.org/en-US/docs/Web/API/NodeList/item
var n = 4
console.log( myDiv.children [n - 1] ) // Nth Element <p>Four</p>
console.log( myDiv.childNodes[n - 1] ) // Nth Node <p>Two</p>Run Code Online (Sandbox Code Playgroud)
<body>
<div id="myDiv">
<p>One</p>
<p>Two</p>
<p>Three</p>
<p>Four</p>
<p>Five</p>
</div>
<hr/>
<div id="output"></div>
</body>Run Code Online (Sandbox Code Playgroud)
改成innerHTML
function revealNibble(n) {
//Do something here...
var elements = document.getElementById('myDiv').children;
for (var i = 1; i <= elements.length; i++) {
if (n === i) {
var output = elements[i].innerHTML || elements[i].textContent;
document.getElementById('output').innerHTML = output; // changed here
}
}
}
revealNibble(3)Run Code Online (Sandbox Code Playgroud)
<div id="myDiv">
<p>One</p>
<p>Two</p>
<p>Three</p>
<p>Four</p>
<p>Five</p>
</div>
<hr/>
<div id="output"></div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2461 次 |
| 最近记录: |