IE 8 及更早版本不支持 jQuery 的 children() 方法。
children() 方法返回匹配元素集合中每個(gè)元素的所有子元素,已進(jìn)行過(guò)濾。這個(gè)方法只考慮直接子節(jié)點(diǎn),而不考慮所有后代元素。children() 方法只會(huì)匹配子元素,如果傳遞一個(gè)選擇器作為參數(shù),它只會(huì)返回匹配該選擇器的元素的子元素。
$(document).ready(function(){ $("ul").children().css("background-color", "yellow"); });
上面的代碼將選擇所有 ul 元素的直接子元素,并將它們的背景顏色更改為黃色。
需要注意的是,IE瀏覽器中 jQuery 的 children() 方法與其他瀏覽器有所不同。在IE中, children() 方法包括文本節(jié)點(diǎn),而其他瀏覽器則不包括文本節(jié)點(diǎn)。如果需要在所有瀏覽器中保持一致性,請(qǐng)使用 jQuery 的 childNodes() 方法。
$(document).ready(function(){ $("ul").find("*").filter(function(){ return this.nodeType === 3; }).remove(); $("ul").children().css("background-color", "yellow"); });
上面的代碼將刪除所有UL元素下的文本節(jié)點(diǎn),然后將UL元素的直接子元素的背景顏色更改為黃色。