In a front-end development process, the blogger uses the NextSibling attribute of the DOM element to get the next sibling element, but gets unintended results. The code snippet is as follows
<!DOCTYPE HTML><HTML><Body><ul> <LiID= "Coffee">Coffee</Li> <li id= "Tea">Tea</Li></ul><Buttononclick= "myFunction ()">Try</Button><Script>functionmyFunction () {Console.info (document.getElementById ("Myli"). nextSibling);}</Script></Body></HTML>
The console prints out
The LI element of id= "Tea" is not expected.
What is this for?
It turns out that the DOM also sees the wrapping of the element as an element (Textnode), which is peer to the LI element, so nextsibling points to the Textnode element.
If you modify the code to the following form
<!DOCTYPE HTML><HTML><Body><ul> <LiID= "Coffee">Coffee</Li><LiID= "Tea">Tea</Li></ul><Buttononclick= "myFunction ()">Try</Button><Script>functionmyFunction () {Console.info (document.getElementById ("Myli"). nextSibling);}</Script></Body></HTML>
The test result is the desired result. (also: this attribute exists for the previoussibling attribute of the same class)
In the DOM, both text and attributes belong to nodes, which should be noted during development.
About nextsibling attributes of DOM elements use note points