ホームページ ウェブフロントエンド jsチュートリアル JQuery のparent()、parents()、parentsUntil() の違いとその使用方法に関するチュートリアル

JQuery のparent()、parents()、parentsUntil() の違いとその使用方法に関するチュートリアル

Jun 24, 2017 am 09:28 AM
jquery parent 違い

parent() は実際には非常に単純で、セレクター内の各要素の外層を指定するだけです。たとえば、$("p") の場合、結果は

のように

でラップされたデータになります。複数の

がある場合、結果セットは オブジェクト のセットになります。 eq(i)、first()、last() を使用して検索できます。データが

  • の使用方法 $("p").parent("li") の場合、クエリ結果は空になります。

    です。

    JQueryマニュアルでは、

    <p><p>Hello</p></p><p class="selected"><p>Hello Again</p></p>
    ログイン後にコピー
    <pre class="brush:php;toolbar:false">$("p").parent(".selected");
    ログイン後にコピー
    //结果:
    ログイン後にコピー
    [ <p class="selected"><p>Hello Again</p></p> ]
    ログイン後にコピー

    は、

    $("p").parent().find(".selected");
    ログイン後にコピー

    直接の親が選択されている1つまたは複数を見つけると理解できます。

    つまり、parent() はあまり実用的ではありません。

    parents() は、セレクター内の各要素のすべての親です。セレクターに複数の親がある場合、結果セットを返します。結果セットの結果は、内層から外層に向かって配置されます。最も外側のレイヤーは html 要素 全体であり、最初のレイヤーはセレクター内の各要素をしっかりとラップする要素です。結果セットには重複する要素はありません。

    同様に、パラメーターが取得されると、指定された要素も結果セット内で見つかります

    $("p").parents(".selected");
    ログイン後にコピー
    $("p").parents().find(".selected");
    ログイン後にコピー

    したがって、セレクターの特定の父親を見つけたい場合は、最初にすべての親を見つけてから、父親を見つける必要があります。

    現在の要素の親を見つけたい場合は、次の構文が使用されます。

    $(this).parents("li");//$(this).parents().find("li");
    ログイン後にコピー

    つまり、parents() は非常に実用的です。非常によく使われます。

    両親まで(expr)。 parents() が HTML 要素全体のセレクター内の各要素のすべての親を検索する場合、parentsUntil() の機能は検索範囲を制限することです。この範囲は $(expr).html()

    $("p").parents();//包含整个html 元素$("p").parentsUntil("html");//不包含整个html元素
    ログイン後にコピー

    です。上記 2 つのの結果セットは 1 つの要素 (HTML 要素全体) だけが異なります。

    $("p").parents();//包含整个html 元素$("p").parentsUntil();//包含整个html元素
    ログイン後にコピー

    parentsUntil() がパラメータを取らない場合、parents(); と同等になります。

    parentsUntil(expr) の結果セット内の結果も、内層から外層に配置されます。 parentUntil(expr) は、要素をラップする最初の親要素から開始して、式 (expr) に一致する最初の要素が見つかるまで、層ごとに外側に向かって検索します。

    $("p").parentsUntil(expr);
    ログイン後にコピー

    は、$(expr)の内外から$("p")内の各要素の親要素を全て検索するのと同等です

    指定した要素をより正確に見つけるには、次のように使用できます。

    $("p").parentsUntil("ul").find("li");
    ログイン後にコピー

    しかし、上記の方法では ul>li は見つかりません。ul * li だけが見つかります。 parentsUntil() は結果セット内の最大の親を ul>* として返し、find は ul>* の子孫要素内で ul>* を含まない要素を検索するためです。したがって、このメソッドを使用して ul>li を検索する場合、それは実現不可能です

    次のコードを使用して、ul (最初の行) の下のすべての li、最も近い ul (2 行目) の下のすべての li をクエリできます

    $("p").parents("ul").find("li");$("p").parents("ul").eq(0).find("li");
    ログイン後にコピー

    parentsUntil( expr) の場合、返される結果セットには expr 自体は含まれません。また、後で find() が使用される場合、結果セットの子孫要素でクエリが実行されるため、クエリの結果は expr の子要素ではなく、 2 世代目以降の子要素。

    親の成績を考慮して、一般的には使用することはお勧めしません。

    parnetsUntil() を使用して、特定のモジュール内の特定の要素を検索できます。

    結果セット内の特定の要素を具体的に操作したい場合は、値を取得するために eq(i)、first()、last() およびその他の 関数 を使用することを覚えておく必要があります。そうしないと、結果セット全体が操作される。

    親ノードを動的に検索

    $(this).parent("li");//找到第一个包住$(this)的dom,如这个dom是li则返回他的对象,如果不是则返回空对象$(this).parents("li");//找到所有$(this)的父亲,并在其中找出所有的li的对象,组成结果集。结果集中结果由内之外排列$(this).parents().find("li");//同上。$(this).parents("li").eq(0);//$(this)外第一个包裹他的li对象$(this).parentsUntil("li");//$(this)外到第一个包裹他的li之内的所有的$(this)的父亲$(this).parentsUntil("ul").find("li");//$(this)在ul之前的那个父亲之内(不包括该父亲)找所有的li;如果<ul><li><p><a onclick="f()">中a是this的话,那么相当于$("li").find("li");最后结果之空。$(this).parents("li").sublings();//查找所在的li的所有同辈元素
    ログイン後にコピー

    parent()に対応する関数はchildren()です

    parents()に対応する関数はfind()です

    以上がJQuery のparent()、parents()、parentsUntil() の違いとその使用方法に関するチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C言語のcharとwchar_tの違い C言語のcharとwchar_tの違い Apr 03, 2025 pm 03:09 PM

C言語では、charとwchar_tの主な違いは文字エンコードです。CharはASCIIを使用するか、ASCIIを拡張し、WCHAR_TはUnicodeを使用します。 Charは1〜2バイトを占め、WCHAR_Tは2〜4バイトを占有します。 charは英語のテキストに適しており、wchar_tは多言語テキストに適しています。 CHARは広くサポートされており、WCHAR_TはコンパイラとオペレーティングシステムがUnicodeをサポートするかどうかに依存します。 CHARの文字範囲は限られており、WCHAR_Tの文字範囲が大きく、特別な機能が算術演算に使用されます。

マルチスレッドと非同期C#の違い マルチスレッドと非同期C#の違い Apr 03, 2025 pm 02:57 PM

マルチスレッドと非同期の違いは、マルチスレッドが複数のスレッドを同時に実行し、現在のスレッドをブロックせずに非同期に操作を実行することです。マルチスレッドは計算集約型タスクに使用されますが、非同期はユーザーインタラクションに使用されます。マルチスレッドの利点は、コンピューティングのパフォーマンスを改善することですが、非同期の利点はUIスレッドをブロックしないことです。マルチスレッドまたは非同期を選択することは、タスクの性質に依存します。計算集約型タスクマルチスレッド、外部リソースと相互作用し、UIの応答性を非同期に使用する必要があるタスクを使用します。

C言語合計の機能は何ですか? C言語合計の機能は何ですか? Apr 03, 2025 pm 02:21 PM

C言語に組み込みの合計機能はないため、自分で書く必要があります。合計は、配列を通過して要素を蓄積することで達成できます。ループバージョン:合計は、ループとアレイの長さを使用して計算されます。ポインターバージョン:ポインターを使用してアレイ要素を指し示し、効率的な合計が自己概要ポインターを通じて達成されます。アレイバージョンを動的に割り当てます:[アレイ]を動的に割り当ててメモリを自分で管理し、メモリの漏れを防ぐために割り当てられたメモリが解放されます。

Charとunsigned Charの違いは何ですか Charとunsigned Charの違いは何ですか Apr 03, 2025 pm 03:36 PM

CharおよびUnsigned Charは、文字データを保存する2つのデータ型です。主な違いは、負と正の数に対処する方法です:値範囲:char署名(-128〜127)、および符号なしのchar unsigned(0〜255)。負の数処理:charは負の数を保存でき、符号なしのcharはできません。ビットモード:char最高ビットは、シンボル、符号なしのchar unsignedビットを表します。算術操作:charおよびunsigned charが署名されており、署名されていないタイプがあり、それらの算術操作は異なります。互換性:charおよびunsigned char

C言語関数の基本的な要件は何ですか C言語関数の基本的な要件は何ですか Apr 03, 2025 pm 10:06 PM

C言語関数は、コードモジュール化とプログラム構築の基礎です。それらは、宣言(関数ヘッダー)と定義(関数体)で構成されています。 C言語は値を使用してパラメーターをデフォルトで渡しますが、外部変数はアドレスパスを使用して変更することもできます。関数は返品値を持つか、または持たない場合があり、返品値のタイプは宣言と一致する必要があります。機能の命名は、ラクダを使用するか、命名法を強調して、明確で理解しやすい必要があります。単一の責任の原則に従い、機能をシンプルに保ち、メンテナビリティと読みやすさを向上させます。

cマルチスレッドの3つの実装方法の違いは何ですか cマルチスレッドの3つの実装方法の違いは何ですか Apr 03, 2025 pm 03:03 PM

マルチスレッドは、コンピュータープログラミングの重要なテクノロジーであり、プログラムの実行効率を改善するために使用されます。 C言語では、スレッドライブラリ、POSIXスレッド、Windows APIなど、マルチスレッドを実装する多くの方法があります。

H5とミニプログラムとアプリの違い H5とミニプログラムとアプリの違い Apr 06, 2025 am 10:42 AM

H5。ミニプログラムとアプリの主な違いは次のとおりです。技術アーキテクチャ:H5はWebテクノロジーに基づいており、ミニプログラムとアプリは独立したアプリケーションです。経験と機能:H5は軽量で使いやすく、機能が限られています。ミニプログラムは軽量で、インタラクティブが良好です。アプリは強力で、スムーズな経験があります。互換性:H5はクロスプラットフォーム互換性があり、アプレットとアプリはプラットフォームによって制限されています。開発コスト:H5には、開発コストが低く、中程度のミニプログラム、最高のアプリがあります。適用可能なシナリオ:H5は情報表示に適しており、アプレットは軽量アプリケーションに適しており、アプリは複雑な機能に適しています。

PSのエクスポートPDFのパスワード保護を設定する方法 PSのエクスポートPDFのパスワード保護を設定する方法 Apr 06, 2025 pm 04:45 PM

Photoshopでパスワードで保護されたPDFをエクスポート:画像ファイルを開きます。 [ファイル]&gtをクリックします。 「エクスポート」&gt; 「PDFとしてのエクスポート」。 「セキュリティ」オプションを設定し、同じパスワードを2回入力します。 [エクスポート]をクリックして、PDFファイルを生成します。

See all articles