ホームページ > ウェブフロントエンド > jsチュートリアル > jQuery.addBack()関数の使用例を詳しく解説

jQuery.addBack()関数の使用例を詳しく解説

巴扎黑
リリース: 2017-07-08 13:10:22
オリジナル
2190 人が閲覧しました

addBack() 関数は、以前に一致した要素を現在一致している要素に追加し、それを新しい jQuery オブジェクトの形式で返すために使用されます。

現在の jQuery オブジェクトは、他の jQuery オブジェクトの特定のメソッドを呼び出すことで作成できます。この関数を使用すると、現在の jQuery オブジェクトと以前に作成した jQuery オブジェクトの一致する要素をすべて含む新しい jQuery オブジェクトが返されます。

セレクターを使用して追加の範囲をさらに絞り込み、前の jQuery オブジェクトで指定されたセレクターに一致する要素のみを追加することもできます。

この関数はjQueryオブジェクト(インスタンス)に属します。

Syntax

jQuery 1.8ではこの機能が追加されました。 andSelf() 関数は、この関数のエイリアスです (andSelf() 関数は 1.8 では廃止されました)。

jQueryObject.addBack( [ selector ] )

parameters

parameter

description

selector Optional/Stringtypeで指定されたセレクターstring

セレクターパラメーターを省略した場合、前の jQuery オブジェクトの一致するすべての要素が追加されます。

戻り値

addBack()関数の戻り値はjQuery型で、現在のjQueryオブジェクトの一致するすべての要素と、現在のjQueryを作成したjQueryオブジェクトの一致する要素を含む新しいjQueryオブジェクトを返します。セレクターを指定するオブジェクト。

一致する要素がない場合は、空の jQuery オブジェクトが返されます。

jQuery 1.8 以降、andSelf() 関数はこの関数のエイリアスです。

詳細: jQuery オブジェクトが作成されると、それを作成した jQuery オブジェクトへの参照を保存する内部 property(prevObject) が存在します。 addBack() 関数が呼び出されると、現在の jQuery とそれを作成した jQuery オブジェクトが add() 関数を通じて接続され、新しい jQuery オブジェクトが返されます。

例と説明

次の HTML コードを例として取り上げます:

<p id="n1">
    <span id="n2">
        <span id="n3">A</span>
    </span>
    <label id="n4">B</label>
    <span id="n5">
        <span id="n6">C</span>
    </span>
    <strong id="n7" class="active">D</strong>
    <span id="n8" class="active">E</span>
</p>
<p id="n9">
    <span id="n10"></span>
    <label id="n11"></label>
    <span id="n12" class="active"></span>
</p>
ログイン後にコピー

次の jQuery サンプル コードは、addBack() 関数の具体的な使用法を示すために使用されます:

//返回jQuery对象所有匹配元素的标识信息数组
//每个元素形如:#id
function getTagsInfo($doms){
    return $doms.map(function(){
        return "#" + this.id;
    }).get();
}
//匹配所有的p元素
var $p = $("p");
//选取所有p元素的后代label元素
var $label = $p.find("label");
//由于jQuery对象$label是通过$p的特定方法创建,使用addBack()将返回一个新的jQuery对象
//该对象所匹配的元素是$p和$label两者的匹配元素之和
var $pAndLabel = $label.addBack();
document.writeln( getTagsInfo( $pAndLabel ) ); // #n1,#n4,#n9,#n11
// 所有包含类名"active"的元素的上一个紧邻的同辈元素(#)
// 再加上所有包含类名"active"的元素中的span元素
var $elements =  $(".active").prev().addBack("span");
document.writeln( getTagsInfo( $elements ) ); // #n5,#n7,#n8,#n11,#n12
//addBack()之前有3个jQuery对象:
//第1个:$("p")
//第2个:$("p").find("strong")
//第3个:$("p").find("strong").siblings(".active")
//调用addBack()的是第3个对象,创建该对象的是第2个对象
//因此addBack()返回包含第3个对象和第2个对象的匹配元素之和的jQuery对象
var $matches = $("p").find("strong").siblings(".active").addBack();
document.writeln( getTagsInfo( $matches ) ); // #n7,#n8
ログイン後にコピー

以上がjQuery.addBack()関数の使用例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート