目次
この記事では、主にコードを使用して、JS と JQuery で DOM を操作する方法を説明します。
クエリノード:
ノードの読み取りと書き込み:
Addとノードの削除: js は親ノードを介してのみノードの追加と削除ができます。jQuery の方がはるかに便利で、対応する API が多数あります
ノードのトラバース: jQueryに対応した一部のAPI、便利なノード操作
概要:
ホームページ ウェブフロントエンド jsチュートリアル JS と JQuery の間で DOM を操作する方法

JS と JQuery の間で DOM を操作する方法

Mar 26, 2018 pm 05:17 PM
javascript jquery 操作する

この記事では、主にコードを使用して、JS と JQuery で DOM を操作する方法を説明します。
クエリノード:

js: 1. IDに基づいてクエリ; 2. 名前に基づいてクエリ; 4. レベルに基づいてクエリ; 詳細は次のとおりです:

<script>
		//1.根据ID查询节点
		var ul = document.getElementById("city");
		var cd = document.getElementById("cd");
		console.log(ul);
		console.log(cd);

		//2.根据标签名查询节点
		//2.1在整个文档(document)内查询
		console.log(document.getElementsByTagName("li"));
		//2.2在某个元素节点(element)内查询
		console.log(ul.getElementsByTagName("li"));

		//3.根据name查询节点(基本都是给表单控件用的)
		console.log(document.getElementsByName("sex"));
		
		//4.根据层次查询节点
		//获取已得到的节点的父亲、孩子和兄弟
		//4.1获取父亲,返回的是单个值
		console.log(cd.parentNode);
		//4.2获取孩子,返回的是多个值
		//这种方式返回的节点是个数组,并且会把空格当做孩子放入数组中
		console.log(ul.childNodes);
		//不带空格的获取孩子的节点
		console.log(ul.getElementsByTagName("li"));
		//标准API中没有直接查询兄弟的方法,
		//必须通过查询父亲、查询孩子来实现查询兄弟,
		//下面的语句输出:上海
		console.log(cd.parentNode.getElementsByTagName("li")[1]);
	</script>
ログイン後にコピー

jQuery: 直接使用要素を選択するための jQuery セレクター、操作を実行するだけです。別の記事を確認してください: jQuery セレクター https://blog.csdn.net/huang_yx/article/details/79686975 (クリックしてリンクを開きます)

ノードの読み取りと書き込み:

js: 1. ノード名とタイプの読み取りと書き込み、 3. ノードの属性の読み取りと書き込み、 4. フォーム コントロールの値の読み取りと書き込み。次のように:

<script>
	//1.读取节点的名称和类型
	//获取p1
	var p1 =document.getElementById("p1");
	console.log(p1.nodeName);
	console.log(p1.nodeType);

	//2.读写节点的内容(<p>内容</p>)
	//innerHTML:支持子标签
	console.log(p1.innerHTML)
	console.log(p1.innerHTML = &#39;单标签试一试&#39;)
	console.log(p1.innerHTML)
	//innerText:不支持子标签
	var p2 = document.getElementById("p2");
	console.log(p2.innerText);
	p2.innerText = "2.<u>查询</u>节点";

	//3.读写节点的属性
	//3.1.标准的API是下面的三个
	//先取到这个节点
	var img = document.getElementById("li");
	console.log(img.getAttribute("src"));
	img.setAttribute("src", "../img/add.png");
	img.removeAttribute("src");
	//3.2.新的API(低版本浏览器不支持)
	//节点.属性名(class除外,要写成className)
	//注意点:.style和.className是标准的
	var a = document.getElementById("baidu");
	console.log(a.href);
	a.href = "undifined";
	
	//4.读写表单控件的值
	//input.value/input.value=""	
</script>
ログイン後にコピー

jQuery:

ノードの HTML コンテンツの読み取りと書き込み (サブタグをサポート): 上記の js

obj.html()/obj.html(" ;123")

ノードのテキストコンテンツの読み取りと書き込み (サブタグはサポートされていません) :上記の js

obj.text()/obj.text(" の 2 番目の点に対応します123")

読み書きノードの属性値:上記 js

obj.attr("属性名") /obj.val("属性名", "属性値")の3番目の点に相当

ノードのvalue属性値の読み書き:上記js

obj.val()/obj.val("abc")の4番目に相当

注:objはjQueryオブジェクトを表します

Addとノードの削除: js は親ノードを介してのみノードの追加と削除ができます。jQuery の方がはるかに便利で、対応する API が多数あります

js:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>增删节点</title>
<script>
	function add(){
		//创建新节点
		//相当于在内存中创建了一个<li></li>
		var li = document.createElement("li");
		//相当于在<li>中创建了一个内容
		li.innerHTML = "天津";
		//追加新节点,可以通过父亲的孩子获取,也可以直接通过ID获取
		var ul = document.getElementById("city");
		ul.appendChild(li);
	}
	//插入到节点中间
	function insertion(){
		//创建新节点
		var li = document.createElement("li");
		li.innerHTML = "成都";
		//插入新节点,到广州之前
		var ul = document.getElementById("city");
		var gz = document.getElementById("gz");
		ul.insertBefore(li, gz)
	}
	//删除节点,必须通过父亲来删除
	function del(){
		//获取要删除的节点
		var sz = document.getElementById("sz");
		//必须通过父亲才能取删除孩子的节点
		sz.parentNode.removeChild(sz);
	}
</script>
</head>
<body>
	<p>
		<input type="button" value="增加"
			onclick="add();"/>
		<input type="button" value="插入"
			onclick="insertion()"/>
		<input type="button" value="删除"
			onclick="del()"/>
	</p>
	<ul id="city">
		<li>北京</li>
		<li>上海</li>
		<li id="gz">广州</li>
		<li id="sz">深圳</li>
	</ul>
</body>
</html>
ログイン後にコピー

jQuert:

Create node:

$( "Node content") ;

$("Hello")

ノードの挿入: 共通 API

parent.append(obj): 最後の子ノードとして追加

parent .prepend(obj): として追加最初の子ノード

brother.after(obj): 次の兄弟ノードとして追加

brother.before(obj): 前の兄弟ノードとして追加

ノードの削除: よく使用されるAPI

obj.remove():ノードの削除

obj.remove(selector): selectorを満たすノードのみ削除

obj.empty(): ノードのクリア

ノードのトラバース: jQueryに対応した一部のAPI、便利なノード操作

children()/children( selector): 直接の子ノード

next()/next(selector): 次の兄弟ノード

prev()/prev(selector): 前の兄弟ノード

siblings( )/siblings(selector): すべての兄弟

find (selector): セレクターを満たすすべての子孫を検索します

parent(): 親ノード

概要:

JS と jQuery のノード上の操作は、追加、削除、変更、確認などにすぎませんが、jQuery はjs フレームワークであり、その中心的なコンセプトは、コードの作成を大幅に簡素化することです。 JS、CSS、DOM をカプセル化して、一貫性のあるシンプルな API を提供するため、より便利で高速に使用でき、対応する記述方法もより簡単になります。

関連する推奨事項:

jsでDOM要素を操作する方法

jsでのDOMイベントフローの詳細な説明

JavaScriptに最適化されたDOM

以上がJS と JQuery の間で DOM を操作する方法の詳細内容です。詳細については、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衣類リムーバー

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)

Linux Deployの操作手順と注意事項 Linux Deployの操作手順と注意事項 Mar 14, 2024 pm 03:03 PM

LinuxDeploy の操作手順と注意事項 LinuxDeploy は、ユーザーが Android デバイスにさまざまな Linux ディストリビューションを迅速に展開できるようにする強力なツールで、ユーザーはモバイル デバイスで完全な Linux システムを体験できます。この記事では、LinuxDeploy の操作手順と注意事項を詳しく紹介し、読者がこのツールをより効果的に使用できるように、具体的なコード例を示します。操作手順: Linux のインストールDeploy: まず、インストールします

Huawei Mate60 Proのスクリーンショット操作手順の共有 Huawei Mate60 Proのスクリーンショット操作手順の共有 Mar 23, 2024 am 11:15 AM

スマートフォンの普及に伴い、スクリーンショット機能は携帯電話を日常的に使用する上で必須のスキルの 1 つになりました。 Huaweiの主力携帯電話の1つであるHuawei Mate60Proのスクリーンショット機能は、当然のことながらユーザーの注目を集めています。今日は、誰もがより便利にスクリーンショットを撮れるように、Huawei Mate60Pro携帯電話のスクリーンショットの操作手順を共有します。まず、Huawei Mate60Pro携帯電話はさまざまなスクリーンショット方法を提供しており、個人の習慣に応じて自分に合った方法を選択できます。以下は、一般的に使用されるいくつかのインターセプトの詳細な紹介です。

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 ファイルに次のコードを追加します。

PHP 文字列操作: スペースを効果的に削除する実用的な方法 PHP 文字列操作: スペースを効果的に削除する実用的な方法 Mar 24, 2024 am 11:45 AM

PHP 文字列操作: スペースを効果的に削除する実用的な方法 PHP 開発では、文字列からスペースを削除する必要がある状況によく遭遇します。スペースを削除すると文字列がきれいになり、その後のデータ処理と表示が容易になります。この記事では、スペースを削除するための効果的かつ実践的な方法をいくつか紹介し、具体的なコード例を添付します。方法1: PHP組み込み関数trim()を使用する PHP組み込み関数trim()を使用すると、文字列の両端のスペース(スペース、タブ、改行などを含む)を削除でき、非常に便利で簡単です。使用します。

Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Jun 25, 2024 pm 07:09 PM

目次 Astar Dapp ステーキングの原則 ステーキング収益 潜在的なエアドロップ プロジェクトの解体: AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap ステーキング戦略と運用 「AstarDapp ステーキング」は今年初めに V3 バージョンにアップグレードされ、ステーキング収益に多くの調整が加えられましたルール。現在、最初のステーキング サイクルが終了し、2 番目のステーキング サイクルの「投票」サブサイクルが始まったばかりです。 「追加報酬」特典を獲得するには、この重要な段階を把握する必要があります (6 月 26 日まで続く予定で、残りは 5 日未満です)。 Astarステーキング収入を詳しく説明します。

WeChat を Ele.me にバインドする方法 WeChat を Ele.me にバインドする方法 Apr 01, 2024 pm 03:46 PM

Ele.me は、さまざまな珍味を集めたソフトウェアです。オンラインで選択して注文できます。販売者は注文を受けてすぐに作成します。ユーザーはソフトウェアを通じて WeChat をバインドできます。具体的な内容を知りたい場合は、操作方法については、PHP 中国語 Web サイトを忘れずに確認してください。 WeChat を Ele.me にバインドする方法の手順: 1. まず Ele.me ソフトウェアを開き、ホームページに入った後、右下隅の [My] をクリックします; 2. 次に、My ページで、左上隅の[アカウント]; 3. 次に、携​​帯電話、WeChat、Alipay、および淘宝網をバインドできる個人情報ページに移動します. ここで、[WeChat] をクリックします; 4. 最後のクリック後、WeChat アカウントを選択しますこれは WeChat 認証ページでバインドする必要があり、[許可] をクリックするだけです。

Win8 コンピューターの起動パスワードを忘れましたか?この操作によりすぐに復元されます。 Win8 コンピューターの起動パスワードを忘れましたか?この操作によりすぐに復元されます。 Mar 27, 2024 pm 10:12 PM

Win8 コンピューターの起動パスワードを忘れることは、日常的にコンピューターを使用するときに多くの人が遭遇する問題です。ログインパスワードを忘れてしまうと、システムに正常にアクセスできなくなり、日常の使用に不便が生じてしまいます。この問題が発生した場合でも、心配しないでください。以下では、Win8 コンピューターのパワーオン パスワードをすばやく復元するための簡単な操作をいくつか紹介します。方法 1: Microsoft アカウントのパスワードを使用する. Microsoft アカウントを使用して Win8 コンピューターにログインする場合は、そのアカウントのパスワードを使用してみることができます。

See all articles