console
class Node {
constructor(node) {
this.rootNode = node
}
getElementById(id) {
let node = this.rootNode
while (node) {
if (node.id === id) {
return node
}
node = this.nextNode(node)
}
return null
}
nextNode(node) {
if (node.children.length) {
return node.children[0]
}
if (this.rootNode === node) {
return null
}
if (node.nextElementSibling) {
return node.nextElementSibling
}
while (node.parentNode) {
if (node.parentNode.nextElementSibling) {
return node.parentNode.nextElementSibling
}
node = node.parentNode
}
return null
}
}
const rengar = document.querySelector(".rengar")
const nodeObj = new Node(rengar)
console.log(nodeObj.getElementById("renger-log"))
<div class="rengar">
<div id="renger-log"></div>
</div>