ホームページ ウェブフロントエンド jsチュートリアル jsとjquery_javascriptスキルで親要素、子要素、兄弟要素を取得する実装方法

jsとjquery_javascriptスキルで親要素、子要素、兄弟要素を取得する実装方法

May 16, 2016 pm 05:04 PM
jquery 子要素 親要素

まず、JQUERY メソッドよりもはるかに面倒な JS 取得メソッドについて説明します。後で、比較のために JQUERY メソッドを使用します。

JS メソッドは JQUERY よりもはるかに面倒です。主な理由は、

FF ブラウザが改行を DOM 要素として扱うためです。

ネイティブ JS は、ID テストを持つ要素の下にある子要素を取得します。利用可能:

例:


🎜>


var a = docuemnt.getElementById("dom").getElementsByTagName_r("div"); これは問題ありません

現時点では a.length=3;

しかし、今ではそれを取得する別の方法があります。それは、前の章で述べた var b = document.getElementByIdx_x("dom").childNodes です。この方法であれば、alert(b.length) は問題ありません。 IE ブラウザではまだ 3 ですが、FF ブラウザではプロンプトは 4 です。これは、FF が改行を要素として扱うためです。

JS を使用するには、これらの属性を処理する必要があります。アイデアの処理は、これらの要素をたどるだけで簡単に行えます。タイプがスペースとテキストである要素をすべて削除します。処理関数はこんな感じ



コードをコピー コードは次のとおりです。function del_space(エレム){
var elem_child = elem.childNodes;//パラメータ要素のすべての子要素を取得します
(var i = 0; i< elem_child.length; i){// traverse child elements}ノード値は空です。彼を削除してください。

nodeNames はノードのノード タイプを取得できます。/s/ は JS の空でない文字の正規表現です。前に追加してください! 、空の文字

を意味します。

test() メソッドは、文字列が特定のパターンに一致するかどうかを確認するために使用されます。構文は次のとおりです。 RegExpObject.test(string)


文字列 string に RegExpObject に一致するテキストが含まれている場合は true を返し、それ以外の場合は false を返します。

nodeValue は、このノードの値を取得することを意味します。

removeChild は、要素の子要素を削除します。

ここがポイントです!

コードをコピー

コードは次のとおりです:

<script><span> function dom(){<a style="CURSOR: pointer" data="41466" class="copybut" id="copybut41466" onclick="doCopy('code41466')"> var a = document.getElementByIdx_x_x("dom");<u> del_space(a); スペースを削除する関数を呼び出します </u> var b = a .childNodes; a のすべての子ノードを取得します; </a> var c = a.parentNode; a</span> var の次の兄弟ノードを取得します。 e = a .previousSbiling; の前の兄弟ノードを取得します。 var f = a.firstChild; </p> <div class="codebody" id="code41466"> の最初の子ノードを取得します。 var g = a.lastChild; }<br></script>


以下では、JQUERY の親ノード、子ノード、兄弟ノードを検索する方法を紹介します

jQuery.parent(expr) 親ノードを見つけるには、$("span").parent() や $("span").parent(".class") などのフィルタリング用の expr を渡すことができます。

jQuery.parents(expr)。jQuery.parents(expr) に似ていますが、親要素に限定されず、すべての祖先要素を検索します。

jQuery.children(expr)。すべての子ノードを返します。このメソッドは直接の子ノードのみを返し、すべての子孫ノードを返しません。

jQuery.contents() は、ノードとテキストを含む以下のすべてのコンテンツを返します。このメソッドとchildren()の違いは、空白のテキストを含めることも

として扱われることです。

jQuery オブジェクトが返され、children() はノードのみを返します

jQuery.prev()、すべての兄弟ノードではなく、前の兄弟ノードを返します

jQuery.prevAll()、以前のすべての兄弟ノードを返します

jQuery.next()、すべての兄弟ノードではなく、次の兄弟ノードを返します

jQuery.nextAll()、後続のすべての兄弟ノードを返します

jQuery.siblings()、前後関係なく兄弟ノードを返します

jQuery.find(expr) は jQuery.filter(expr) とはまったく異なります。 jQuery.filter() は jQuery オブジェクトの初期コレクションの一部をフィルターで除外しますが、jQuery.find()

の戻り結果には、

からの $("p")、find("span") などの初期コレクションのコンテンツは含まれません。

$("p span") に相当する p 要素を探し始めます

——————————————2014 1-9————————————————

上記は、js と jquery を解決して親子要素などを取得するためにインターネットから選択した方法ですが、解決する際にはまだ問題が発生します。

コードをコピー コードは次のとおりです:




js获取节点dom操作

接口

nodeType常量

nodeType值

备注

Element

Node.ELEMENT_NODE

1

元素节点

Text

Node.TEXT_NODE

3

文本节点

Document

Node.DOCUMENT_NODE

9

document

Comment

Node.COMMENT_NODE

8

注释的文本

DocumentFragment

Node.DOCUMENT_FRAGMENT_NODE

11

document片断

Attr

Node.ATTRIBUTE_NODE

2

节点属性

インターフェース

方法

描述

createAttribute()

用指定的名字创建新的Attr节点。

createComment()

用指定的字符串创建新的Comment节点。

createElement()

用指定的标记名创建新的Element节点。

createTextNode()

用指定的文本创建新的TextNode节点。

getElementById()

返回文档中具有指定id属性的Element节点。

getElementsByTagName()

返回文档中具有指定标记名的所有Element节点。

属性

描述

attributes

如果该节点是一个Element,则以NamedNodeMap形式返回该元素的属性。

childNodes

以Node[]的形式存放当前节点的子节点。如果没有子节点,则返回空数组。

firstChild

以Node的形式返回当前节点的第一个子节点。如果没有子节点,则为null。

lastChild

以Node的形式返回当前节点的最后一个子节点。如果没有子节点,则为null。

nextSibling

以Node的形式返回当前节点的兄弟下一个节点。如果没有这样的节点,则返回null。下一个兄弟节点

nodeName

节点的名字,Element节点则代表Element的标记名称。

nodeType

代表节点的类型。

parentNode

以Node的形式返回当前节点的父节点。如果没有父节点,则为null。

previousSibling

以Node的形式返回紧挨当前节点、位于它之前的兄弟节点。如果没有这样的节点,则返回null。上一个兄弟节点

nodeType常量
ノードタイプ值
要素 ノード.ELEMENT_NODE 1 元素节点
テキスト Node.TEXT_NODE 3 文本节点
ドキュメント ノード.DOCUMENT_NODE 9 ドキュメント
コメント ノード.COMMENT_NODE 8 注釈の文章
ドキュメントフラグメント ノード.DOCUMENT_FRAGMENT_NODE 11 文書切断
属性 ノード.ATTRIBUTE_NODE 2 节点プロパティ
方法 説明
createAttribute() 指定された名前を使用して新しい Attr ポイントが作成されます。
createComment() 指定された文字を使用して新しいコメント ポイントを作成します。
createElement() 指定されたマーク名を使用して新しい要素ポイントが作成されます。
createTextNode() 指定されたテキストを使用して新しい TextNode ポイントが作成されます。
getElementById() は、指定された id プロパティを持つテキストボックス内の要素ポイントを返します。
getElementsByTagName() は、指定されたマーク名を持つすべての要素ポイントをテキストに返します。
TR>
プロパティ 説明
属性 そのノードが要素の場合、NamedNodeMap の形式でその要素のプロパティが返されます。
子ノード は、現在のノードの子ノードを Node[] の形式で保存します。子ノードがない場合は、空の数の集合を返します。
firstChild はノードの形式で現在のノードの最初の子ノードを返します。子ノードがない場合は null になります。
最後の子 はノードの形式で現在のノードの最後の子ノードを返します。子ノードがない場合は null になります。
次の兄弟 は、ノードの形式で現在のノードの兄弟の次のノードを返します。そのようなノードがない場合は、null を返します。下の兄弟のノード
ノード名 ポイントの名前、要素ポイントは要素のマーク名を表します。
ノードタイプ ポイントの種類を表します。
親ノード ノードの形式で現在のノードの父ノードが返されます。父ノードがない場合はnullになります。
前の兄弟 は、ノードの形式で、現在のノードの直前にある兄弟ノードを返します。そのようなノードがない場合は、null を返します。 上の兄弟ノード
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

jQueryのリファレンスメソッドを詳しく解説:クイックスタートガイド jQueryのリファレンスメソッドを詳しく解説:クイックスタートガイド Feb 27, 2024 pm 06:45 PM

jQuery 参照方法の詳細説明: クイック スタート ガイド jQuery は、Web サイト開発で広く使用されている人気のある JavaScript ライブラリであり、JavaScript プログラミングを簡素化し、開発者に豊富な機能を提供します。この記事では、jQuery の参照方法を詳しく紹介し、読者がすぐに使い始めるのに役立つ具体的なコード例を示します。 jQuery の導入 まず、HTML ファイルに jQuery ライブラリを導入する必要があります。 CDN リンクを通じて導入することも、ダウンロードすることもできます

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? Feb 28, 2024 pm 03:12 PM

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQuery で PUT リクエストを送信する方法は、他のタイプのリクエストを送信する方法と似ていますが、いくつかの詳細とパラメータ設定に注意する必要があります。 PUT リクエストは通常​​、データベース内のデータの更新やサーバー上のファイルの更新など、リソースを更新するために使用されます。以下は、jQuery の PUT リクエスト メソッドを使用した具体的なコード例です。まず、jQuery ライブラリ ファイルが含まれていることを確認してから、$.ajax({u

jQueryで要素の高さ属性を削除するにはどうすればよいですか? jQueryで要素の高さ属性を削除するにはどうすればよいですか? Feb 28, 2024 am 08:39 AM

jQueryで要素の高さ属性を削除するにはどうすればよいですか?フロントエンド開発では、要素の高さ属性を操作する必要が生じることがよくあります。要素の高さを動的に変更する必要がある場合や、要素の高さ属性を削除する必要がある場合があります。この記事では、jQuery を使用して要素の高さ属性を削除する方法と、具体的なコード例を紹介します。 jQuery を使用して高さ属性を操作する前に、まず CSS の高さ属性を理解する必要があります。 height 属性は要素の高さを設定するために使用されます

jQuery のヒント: ページ上のすべての a タグのテキストをすばやく変更する jQuery のヒント: ページ上のすべての a タグのテキストをすばやく変更する Feb 28, 2024 pm 09:06 PM

タイトル: jQuery ヒント: ページ上のすべての a タグのテキストをすばやく変更する Web 開発では、ページ上の要素を変更したり操作したりする必要がよくあります。 jQuery を使用する場合、ページ内のすべての a タグのテキスト コンテンツを一度に変更する必要がある場合があります。これにより、時間と労力を節約できます。以下では、jQuery を使用してページ上のすべての a タグのテキストをすばやく変更する方法と、具体的なコード例を紹介します。まず、jQuery ライブラリ ファイルを導入し、次のコードがページに導入されていることを確認する必要があります: &lt

jQuery を使用してすべての a タグのテキスト コンテンツを変更する jQuery を使用してすべての a タグのテキスト コンテンツを変更する Feb 28, 2024 pm 05:42 PM

タイトル: jQuery を使用して、すべての a タグのテキスト コンテンツを変更します。 jQuery は、DOM 操作を処理するために広く使用されている人気のある JavaScript ライブラリです。 Web 開発では、ページ上のリンク タグ (タグ) のテキスト コンテンツを変更する必要が生じることがよくあります。この記事では、この目標を達成するために jQuery を使用する方法を説明し、具体的なコード例を示します。まず、jQuery ライブラリをページに導入する必要があります。 HTML ファイルに次のコードを追加します。

jQuery における eq の役割と応用シナリオを理解する jQuery における eq の役割と応用シナリオを理解する Feb 28, 2024 pm 01:15 PM

jQuery は、Web ページでの DOM 操作やイベント処理を処理するために広く使用されている人気のある JavaScript ライブラリです。 jQueryではeq()メソッドを利用して指定したインデックス位置の要素を選択しますが、具体的な使い方と応用シーンは以下の通りです。 jQuery では、 eq() メソッドは、指定されたインデックス位置にある要素を選択します。インデックス位置は 0 からカウントされます。つまり、最初の要素のインデックスは 0、2 番目の要素のインデックスは 1 などとなります。 eq() メソッドの構文は次のとおりです。 $("s

jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? Feb 29, 2024 am 09:03 AM

jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? jQuery を使用して DOM 要素を操作する場合、要素に特定の属性があるかどうかを判断する必要がある状況がよく発生します。この場合、jQuery が提供するメソッドを使用してこの関数を簡単に実装できます。以下では、jQuery 要素が特定の属性を持つかどうかを判断するために一般的に使用される 2 つの方法を紹介し、具体的なコード例を添付します。方法 1: attr() メソッドと typeof 演算子 // を使用して、要素に特定の属性があるかどうかを判断します

jQueryを使用してテーブルに新しい行を追加する方法の紹介 jQueryを使用してテーブルに新しい行を追加する方法の紹介 Feb 29, 2024 am 08:12 AM

jQuery は、Web 開発で広く使用されている人気の JavaScript ライブラリです。 Web 開発中は、JavaScript を使用してテーブルに新しい行を動的に追加することが必要になることがよくあります。この記事では、jQuery を使用してテーブルに新しい行を追加する方法を紹介し、具体的なコード例を示します。まず、jQuery ライブラリを HTML ページに導入する必要があります。 jQuery ライブラリは、次のコードを通じてタグに導入できます。

See all articles