第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

有幾處代碼不懂 求教~~

<script type="text/javascript">

? ? function get_nextSibling(n){

? ? ? ? var x=n.nextSibling;

? ? ? ? while (x && x.nodeType!=1){ // 第一處 為什么x的節(jié)點(diǎn)類型不為1的元素節(jié)點(diǎn)就能作為n的兄弟節(jié)點(diǎn)?

? ? ? ? ? ? x=x.nextSibling;// 第二處 x不是已經(jīng)定義為n的下個(gè)節(jié)點(diǎn)了么,為什么又要重新賦值一次,重新賦值后的x不就是n的下下一個(gè)節(jié)點(diǎn)了么

? ? ? ? }

? ? ? ? return x;

? ? }


? ? var x=document.getElementsByTagName("li")[0];

? ? document.write(x.nodeName);

? ? document.write(" = ");

? ? document.write(x.innerHTML);

? ??

? ? var y=get_nextSibling(x);

? ??

? ? if(y!=null){ ?//上面不是已經(jīng)在(x && x.nodeType!=1)約束了n的下一個(gè)節(jié)點(diǎn)要存在么 為什么又要重新約束一次?

? ? ? ? document.write("<br />nextsibling: ");

? ? ? ? document.write(y.nodeName);

? ? ? ? document.write(" = ");

? ? ? ? document.write(y.innerHTML);

? ? }else{

? ? ? document.write("<br>已經(jīng)是最后一個(gè)節(jié)點(diǎn)"); ? ? ?

? ? }


正在回答

4 回答

第三處。IF可以省略。為了完整性。給上一個(gè)IF判斷。如果null即后面沒(méi)有元素。就輸出 已經(jīng)是最后一個(gè)節(jié)點(diǎn)!。

就當(dāng)作是為了輸出一個(gè)??已經(jīng)是最后一個(gè)節(jié)點(diǎn)!。 吧!

1 回復(fù) 有任何疑惑可以回復(fù)我~

第二處,并不是重復(fù)賦值。。而是不太好理解。function中的var僅作用與函數(shù)內(nèi)。所以此X非彼X。。

1 回復(fù) 有任何疑惑可以回復(fù)我~

?第一處 為什么x的節(jié)點(diǎn)類型不為1的元素節(jié)點(diǎn)就能作為n的兄弟節(jié)點(diǎn)?

? ? 如果不等于1,即是把空白區(qū)域算成一個(gè)節(jié)點(diǎn)了。我們要忽略這個(gè)節(jié)點(diǎn)。所以它必須等于1,也就是元素節(jié)點(diǎn)。這是我們需要的東西。那不等于1呢? 取它后面的一個(gè)節(jié)點(diǎn)不就行了。 ?那要是等于1,也就是沒(méi)有算上空白節(jié)點(diǎn)。直接獲取自己后面的下一個(gè)節(jié)點(diǎn)就行了。

2 回復(fù) 有任何疑惑可以回復(fù)我~

function get_nextSibling(n){

? ? ? ? var x=n.nextSibling;

? ? ? ? while (x && x.nodeType!=1){?// 第一處 為什么x的節(jié)點(diǎn)類型不為1的元素節(jié)點(diǎn)就能作為n的兄弟節(jié)點(diǎn)?

//此處判斷為X節(jié)點(diǎn)類型不為1時(shí)的節(jié)點(diǎn)不能作為N的兄弟節(jié)點(diǎn),進(jìn)而運(yùn)行后面的X=X.nextSibling;去循環(huán)下一個(gè)節(jié)點(diǎn)能否作為N的兄弟節(jié)點(diǎn),如果為1的話就不會(huì)運(yùn)行while里的程序,直接去運(yùn)行 return x 了;

? ? ? ? ? ? x=x.nextSibling;// 第二處 x不是已經(jīng)定義為n的下個(gè)節(jié)點(diǎn)了么,為什么又要重新賦值一次,重新賦值后的x不就是n的下下一個(gè)節(jié)點(diǎn)了么

????? ? //? ? 即上提及的循環(huán)下一個(gè)節(jié)點(diǎn);

? ? ? ? }

? ? ? ? return x;

? ? }

//第三點(diǎn)沒(méi)相通,推測(cè)是判斷此節(jié)點(diǎn)不是最后一個(gè)節(jié)點(diǎn),出于瀏覽器兼容問(wèn)題做出的約束;

初學(xué),如有錯(cuò)誤抱歉。


1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

叛逆春 提問(wèn)者

你這是完全忽略我問(wèn)的問(wèn)題 自己解釋啊 親...
2015-08-10 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
JavaScript進(jìn)階篇
  • 參與學(xué)習(xí)       468965    人
  • 解答問(wèn)題       22582    個(gè)

本課程從如何插入JS代碼開(kāi)始,帶您進(jìn)入網(wǎng)頁(yè)動(dòng)態(tài)交互世界

進(jìn)入課程

有幾處代碼不懂 求教~~

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)