parents()加了參數(shù)和沒加是一樣的結(jié)果?
$('.item-b').parents(":contains('B')").css('border', '2px solid blue')
這句代碼會(huì)把所有元素框起來,但是如果把:contains('B')換成:last就只會(huì)框一個(gè),有沒有人知道為什么TT
$('.item-b').parents(":contains('B')").css('border', '2px solid blue')
這句代碼會(huì)把所有元素框起來,但是如果把:contains('B')換成:last就只會(huì)框一個(gè),有沒有人知道為什么TT
2017-08-20
舉報(bào)
2017-08-20
前面 $('.item-b').parents 就相當(dāng)于獲得了.item-b 的所有祖輩元素并形成一個(gè)集合,后面()中的參數(shù)相當(dāng)于在這個(gè)集合里再做操作,你看,要是輸入:contains('B')的話,因?yàn)檫@個(gè)集合里是沒有它的,所以和(空)是一個(gè)效果【因?yàn)?.item-b'和:contains('B')代表的是一個(gè)節(jié)點(diǎn)0.0]】,如果換成 :last,就會(huì)得到集合里的最后一個(gè)值,并在它上面操作【框一個(gè)(是html?)】,你還可以試試 lt或者eq().
2017-08-20
parents返回的是所有的祖先元素,:contains('B')選擇的是包含制定文本的元素,即li,所以,從ul開始,所有的祖先元素都被加了邊框,而:last選擇了祖先元素里邊的最后一個(gè),所以就只有最后一個(gè)加了邊框