为了账号安全,请及时绑定邮箱和手机立即绑定

这节有点蒙 有大佬简化解析下吗

这节有点蒙 有大佬简化解析下吗

正在回答

1 回答

首先这节教了两个结点属性(自己去查一查搞清方法和属性的区别)

nextSibling    previousSibling

下一个结点    前一个结点


<ul id="u1">   

                <li id="a">javascript</li>  文本元素 

                <li id="b">jquery</li>   文本元素 

                <li id="c">html</li>   文本元素 

            </ul>   

            <ul id="u2">   

                <li id="d">css3</li>  文本元素  

                <li id="e">php</li>  文本元素  

                <li id="f">java</li>   文本元素 

</ul> 

这节的难点其实都是上几节的,接下来分别说

第一个难点getElementsByTagName()方法返回值

它返回了所有li元素组成的数组

而每个li元素分别有一个元素结点<li id="a">javascript</li>(li从开始到合并表示一个结点)

和一个空的文本元素结点

第二个难点是节点属性的判断

get_nextSibling函数中,对结点进行了判断

首先获取了当前结点的下一个结点

var x=n.nextSibling;

然后判断这个结点的属性是否是我们需要的

while (x && x.nodeType!=1){

            x=x.nextSibling;

        }

x && x.nodeType!=1 x用来检测当前结点是不是空的,x.nodeType!=1 检测该节点是不是元素节点

这里要明白 x.nextSibling.nextSibling.nextSibling.....以此类推

第三个难点是对结点是否是最后一个结点的判断

if(y!=null){

else{

}




11 回复 有任何疑惑可以回复我~
#1

慕慕4374729

这句话我不理解,第一个难点getElementsByTagName()方法返回值 它返回了所有li元素组成的数组而每个li元素分别有一个元素结点<li id="a">javascript</li>(li从开始到合并表示一个结点)和一个空的文本元素结点。 我测长度为6,并没有多余的文本元素节点啊
2022-07-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

这节有点蒙 有大佬简化解析下吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信