課程
/前端開發(fā)
/jQuery
/jQuery基礎(二)—DOM篇
上面注意事項中$( "html" ).parents()返回一個空集合,不是應該會返回document嗎,難道它的父元素不屬于它的祖輩范圍之內?
2017-09-29
源自:jQuery基礎(二)—DOM篇 6-4
正在回答
記住就好了,又不常用
你可以簡單地認為API=接口。接口文件,是接口的重要組成部分。親,你寫的方法是可以實現(xiàn)表格有邊框的作用,但不是標準正規(guī)的寫法,而只是一個技巧。
JQ源碼:
里面有這么一段:這是parents()的
if?(?cur.nodeType?===?1?)?{?????//主要看這一句,當父級對象的nodeType為1時;
matched.push(?cur?);???????????//將這個父級對象插入matched數(shù)組;matched數(shù)組初始狀態(tài)是空;
}
cur?=?cur[dir];??????????
return?matched;????????????????//返回這個數(shù)組
所以$("html")的父級是document,document的nodeType是9,因此不會被放入數(shù)組;
然而parent()方法就沒有這個判斷,
parent:?function(?elem?)?{
????????var?parent?=?elem.parentNode;
????????return?parent?&&?parent.nodeType?!==?11???parent?:?null;??//當父元素nodeType不為11時,直接返回
????},
這里費解!
另外打印$('.item-b').parents().css('border', '2px solid red')出來一共有7個元素,不包括document
alert('謝謝采納')
我的理解是:$("html").parents()取得的是當前元素的祖先元素(但不包括根元素),在HTML中根元素(祖先元素)就是html,而在html上面已經沒有父元素了,所以返回空集合
返回document的是parent(),因為parent()返回當前元素的父元素,最終取到根元素html,每個html文檔都會成為 document對象,所以返回document集合
舉報
jQuery第二階段開啟DOM修煉,了解創(chuàng)建、插入、刪除與替換
3 回答$( "html" ).parent()方法返回一個包含document的集合,而$( "html" ).parents()返回一個空集合,這個解釋對嗎?
1 回答而$( "html" ).parents()返回一個空集合 為什么是空集合呢
3 回答$( "html" ).parent()方法返回一個包含document的集合,而$( "html" ).parents()返回一個空集合 哪位大神來解釋下
1 回答parents()方法會查每一個元素的所有祖輩元素?
3 回答.replaceWith( newContent ):用提供的內容替換集合中所有匹配的元素并且返回被刪除元素的集合
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-10-20
記住就好了,又不常用
2022-03-25
你可以簡單地認為API=接口。接口文件,是接口的重要組成部分。親,你寫的方法是可以實現(xiàn)表格有邊框的作用,但不是標準正規(guī)的寫法,而只是一個技巧。
2019-07-11
JQ源碼:
里面有這么一段:這是parents()的
if?(?cur.nodeType?===?1?)?{?????//主要看這一句,當父級對象的nodeType為1時;
matched.push(?cur?);???????????//將這個父級對象插入matched數(shù)組;matched數(shù)組初始狀態(tài)是空;
}
cur?=?cur[dir];??????????
}
return?matched;????????????????//返回這個數(shù)組
所以$("html")的父級是document,document的nodeType是9,因此不會被放入數(shù)組;
然而parent()方法就沒有這個判斷,
parent:?function(?elem?)?{
????????var?parent?=?elem.parentNode;
????????return?parent?&&?parent.nodeType?!==?11???parent?:?null;??//當父元素nodeType不為11時,直接返回
????},
2019-02-22
$( "html" ).parent()能夠反饋document那么
$( "html" ).parents()至少應該能反饋一個document
這里費解!
另外打印$('.item-b').parents().css('border', '2px solid red')出來一共有7個元素,不包括document
2017-10-23
alert('謝謝采納')
2017-10-01
我的理解是:$("html").parents()取得的是當前元素的祖先元素(但不包括根元素),在HTML中根元素(祖先元素)就是html,而在html上面已經沒有父元素了,所以返回空集合
返回document的是parent(),因為parent()返回當前元素的父元素,最終取到根元素html,每個html文檔都會成為 document對象,所以返回document集合