亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

closest()方法

$("button:last").click(function()?{
????????var?itemB?=?$('.item-b')
????????$('li.item-1')
????????????.closest(itemB)
????????????.css('border',?'1px?solid?blue');
????})

$('li.item-1') .parents('.item-b').css('border', '1px solid blue')這是正確的為什么parents(itemB)就不行變成全選了,只有closest才有這種傳參方式?

$("button:last").click(function()?{
????????var?itemB?=?$('.item-b')
????????$('li.item-1')
????????????.parents(itemB)
????????????.css('border',?'1px?solid?blue');
????})


正在回答

3 回答

parents()是無參數的,但是允許傳一個選擇器的表達式。itemB是參數,'.item-b'是一個字符串,是一個表達式,是這個方法封裝者設置的,被允許的參數。這里說的無參數,應該是指不能傳入變量,且只能傳入“選擇器表達式”,其他的都不行。

0 回復 有任何疑惑可以回復我~
代碼:$('li.item-1')?.parents('.item-b').css('border',?'1px?solid?blue');
意思是:從$('li.item-1')的parents集合中取出class名為item-b的元素(從當前集合篩選)

再看看選擇性接受同一類型選擇器表達式的解釋:

parents()方法選擇性地接受同一型選擇器表達式

同樣的也是因為jQuery是合集對象,可能需要對這個合集對象進行一定的篩選,找出目標元素,所以允許傳一個選擇器的表達式;?



0 回復 有任何疑惑可以回復我~
#1

碼農吊車尾

對題目理解錯了,答案對不上題,沒法刪
2016-10-11 回復 有任何疑惑可以回復我~
#2

啊啊啊啊123 提問者 回復 碼農吊車尾

O(∩_∩)O哈哈~
2016-10-11 回復 有任何疑惑可以回復我~

parents 是全遍歷之后挑選相符合的

closest 是向上層遍歷之后 遇到符合的就停止遍歷

0 回復 有任何疑惑可以回復我~
#1

啊啊啊啊123 提問者

$('li.item-1') .parents('.item-b').css('border', '1px solid blue');我要這么寫也是對的你知道么
2016-09-02 回復 有任何疑惑可以回復我~
#2

碼農吊車尾 回復 啊啊啊啊123 提問者

從$('li.item-1')的parents集合中取出class名為item-b的元素(從當前集合篩選)
2016-10-11 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
jQuery基礎(二)—DOM篇
  • 參與學習       114002    人
  • 解答問題       614    個

jQuery第二階段開啟DOM修煉,了解創建、插入、刪除與替換

進入課程

closest()方法

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號