.addBack() と .parent() の違いは何ですか?
どちらも1レベル上に移動して要素を選択しているようです。
どこから来たかによります。
parent()
は常に直接の親要素を選択し、addBack()
の結果は前のセレクターの結果に依存します:
.addBack( [セレクター] )
戻り値: jQuery 説明: スタック上の要素の以前のセットを現在のセットに追加し、オプションでセレクターによってフィルター処理します。
次の jsfiddle の例を確認してください: http://jsfiddle.net/vGAq5/2/
最初のアラートでは、2 番の後続のすべての兄弟が選択され、2 番が追加されます。2 番目のアラートは、2 番目の後続のすべての兄弟を選択し、その親を (結果セットに追加する代わりに) 取得します。
完全に異なる方法:
addBack() - add the current selection to the previous one and merges those selections
parent() - selects the direct parent of the current selection
公式ドキュメントを確認してください:
http://api.jquery.com/addBack/
基本的な例:
HTMLを検討してください:
<div id="parent">
<div id="child">
</div>
</div>
JavaScript:
console.log($('#child').parent()); // return the div#parent selection
console.log($('#child').addBack()); // return the div#child selection - it merges the div#child with the previous selection (which happens to be empty)