「Java Script DOM プログラミング術」読書メモ -- DOM_html/css_WEB-ITnose
1. DOM の「D」
「D」はドキュメント (ドキュメント)
2. : DOM の「O」
「O」はオブジェクト (オブジェクト) を表します オブジェクトの分類
- ユーザー定義オブジェクト (ユーザー定義オブジェクト)
- ネイティブオブジェクト
- ホスト オブジェクト
window オブジェクト window オブジェクトはブラウザ ウィンドウ自体に対応し、通常、このオブジェクトのプロパティとメソッドを総称して BOM (Browse Object Model) と呼ばれます。BOM が提供します。 window.open や window.blur などのメソッド。さまざまなポップアップ ウィンドウやドロップダウン メニューで悪用されているほどです
3. モデル: DOM の "M"
"M" は "Model" の略です (モデル). DOM はドキュメントを表します ツリーのコード例 (数学的概念)
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8" /> <title>Shoping List<title> </head> <body> <h1>What to buy</h1> <p title="a gentle reminder">Don’t forget to buy this stuff.<p> <ul id="purchases"> <li> A tin of beans<li> <li class="sale">Cheese<li> <li class="sale important">Milk<li> </ul> <body> </html>代码中<html>相当于树根,即根元素。<head>和<body>属于下一个分支,位于同一层次且互不包含,属于兄弟关系。<head>元素有两个子元素<meta>和<title>(属于兄弟关系)<body>元素有三个子元素<p>、<h1>、<ul>(这三个属于兄弟关系。<ul>也是一个父元素,有三个子元素,他们都是<li>元素。
ドキュメントのさまざまな要素を家系図として想像できれば、DOM を同じ用語で説明できます。しかし、 「ノードツリー」
と呼ぶ方が正確だと思います。 4. ノード
ノード (node) はネットワーク用語で、ネットワーク内の接続点を表します。ネットワーク。ネットワークはノードの集合です。 DOM にも同じことが当てはまります。ドキュメントはノードのコレクションです。
- 要素ノード
- テキストノード
- 属性ノード
4.1 要素ノード
DOM のアトムは 要素ノード (要素ノード)
、、
4. 2 テキスト ノード
上の例では、
というテキストが含まれています。これは テキスト ノードです。 (テキストノード)。
4.3 属性ノード
属性ノードは、要素のより具体的な説明を提供します。たとえば、ほとんどすべての要素には title 属性があり、この属性を使用して要素に含まれる内容を正確に説明できます。
属性ノード<p title="a gentle reminder">Don't forget to buy this stuff.<p>
- に id 属性があります。一部のリスト要素
- には class 属性があります。
3 つの関係.png
4, 4 CSS
JavaScript スクリプトと同様に、ドキュメントに CSS スタイルを埋め込むこともできます。 head> セクション (style> タグの間)。別のファイルに配置することもできます。 **HTML ファイル内で CSS ファイルを参照する形式:は、CSS テクノロジーの強力な機能です。 1) クラス属性<link type="text/css" href="file.css" rel="stylesheet">
ログイン後にコピーは、上記のコード
<p class="special">This pargraph has the special class<p><h2 class="special">So dose this headline</h2>
ログイン後にコピーのスタイル シートで定義することも、次のように定義することもできます
special{font-style: italic;}
ログイン後にコピー2)、id 属性 id 属性の目的は、Web ページ内の要素に一意の識別子を追加することです:
h2.special{text-transform: uppercase;}
ログイン後にコピースタイル シート定義
<ul id="purchases">
ログイン後にコピー#purchases{border:1px solid white;background-color:#333;color:#ccc;padding:1em;}
ログイン後にコピー#purchases li{font-weight:bold;}
ログイン後にコピー要素ノードを取得するには、要素 ID 経由、タグ名経由、クラス名経由の 3 つの DOM メソッドがあります。
- getElementsByTagName
- getElementsByClassName
- 1)getElementById
JavaScript の
の場合に注意してください。これは、ドキュメント オブジェクトに固有の関数です。スクリプト コードでは、関数名の後に 1 対の括弧を続ける必要があります。この 1 対の括弧には、 関数のパラメーターが含まれます。 document.getElementById(id) の getElementById メソッドにはパラメーターが 1 つだけあります: 取得する要素の id 属性の値 この id 属性は一重引用符または二重引用符で囲む必要があります。 。この docment.getElementById("purchases") の呼び出しは、オブジェクトを返します。このオブジェクトは、ドキュメント オブジェクトの一意の要素に対応します。その要素の HTLM id 属性値は、purchase です。結果はオブジェクト
2) getElementsByTagNameShoping List What to buy
Don’t forget to buy this stuff.
<ul id="purchases">
- A tin of beans
- Cheese
- Milk
- <script> alert(typeof docment.getElementById("purchases")); </script> //利用`typeof`操作符进行验证(typeof操作符可以告诉我们它的操作数是一个字母、数值、函数、布尔值还是对象。
ログイン後にコピーgetElementsByTagName メソッドはオブジェクトの配列を返します。各オブジェクトはドキュメント内の指定されたタグを持つ要素に対応します。そのパラメータはタグの名前です: device.getElementByTagName(tag)
getElementsByTagName では、パラメータとしてワイルドカード文字を使用できます。ワイルドカード文字 (*) は引用符で囲む必要があります
。alert(document.getElementsByTagName("li").length);//显示文档里的列表元素个数为:3
ログイン後にコピーShoping List What to buy
Don’t forget to buy this stuff.
<ul id="purchases">
- A tin of beans
- Cheese
- Milk
- <script> var items=document.getElementByTagName("li"); for (var i=0; i<items.length;i++){ alert(typeof items[i]); } </script> //代码运行结果显示三个alert对话框,显示的消息都是“object”。
ログイン後にコピー3) getElementByClassName
このメソッドでは、クラス属性のクラス名を使用して要素にアクセスできます。これはクラス名である 1 つのパラメーターのみを受け入れます。alert(document.getElementsByTagName("*").length);//可以知道文档里有多少个元素节点
ログイン後にコピーvar shopping=document.getElementById("purchases");var items=shopping.getElementsByTagName("*");//程序运行结果,items数组将只包含id属性值是purshase的元素清单的元素
ログイン後にコピーこのメソッドの戻り値も getElementsByTagName に似ており、同じクラス名を持つ要素の配列です。
document.getElementsByClassName("sale")
ログイン後にコピー利用这种方法还可有查找那些带有多个类名的元素。多个类名之间用空格分开即可
alert(document.getElementsByClassName("important sale").length);//对话框显示1,表示只有一个元素匹配。类名的顺序不重要,就算元素还带有更多类名也没有关系。
ログイン後にコピー也可以和getElementById组合使用
var shopping=document.getElementById("purchase"); var sales=shopping.getElementsByClassName("sale");sales数组中包含的就只是位于“purchases”列表中的带有“sale”类的元素。
ログイン後にコピーgetElementByClassName方法非常有用,但只有较新的浏览器才支持它。所以,需要使用已有的DOM方法来实现自己的getElementsByClassName。
function getElementsByClassName(node,classname){if (node.getElementsByClassName){//使用现有的方法return node.getElementsByTagName("*");for (var i=0; i<elems.length;i++){ if(elems[i].ClassName.indexof(classname)!= -1){results[results.length]=elems[i]; } }return results; }}
ログイン後にコピー5 获取和设置属性
- getAttribute方法(获取元素的属性)
- setAttribute方法(更改属性节点值)5、1getAttributegetAttribute是一个函数,它只有一个参数(你所要查询的属性的名称)

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。

HTMLの将来の傾向はセマンティクスとWebコンポーネントであり、CSSの将来の傾向はCSS-in-JSとCSShoudiniであり、JavaScriptの将来の傾向はWebAssemblyとServerLessです。 1。HTMLセマンティクスはアクセシビリティとSEO効果を改善し、Webコンポーネントは開発効率を向上させますが、ブラウザの互換性に注意を払う必要があります。 2。CSS-in-JSは、スタイル管理の柔軟性を高めますが、ファイルサイズを増やす可能性があります。 CSShoudiniは、CSSレンダリングの直接操作を可能にします。 3. Webassemblyブラウザーアプリケーションのパフォーマンスを最適化しますが、急な学習曲線があり、サーバーレスは開発を簡素化しますが、コールドスタートの問題の最適化が必要です。

HTMLの将来は、無限の可能性に満ちています。 1)新機能と標準には、より多くのセマンティックタグとWebComponentsの人気が含まれます。 2)Webデザインのトレンドは、レスポンシブでアクセス可能なデザインに向けて発展し続けます。 3)パフォーマンスの最適化により、応答性の高い画像読み込みと怠zyなロードテクノロジーを通じてユーザーエクスペリエンスが向上します。

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

HTMLは、Webページ構造の構築の基礎です。 1。HTMLは、コンテンツ構造とセマンティクス、および使用などを定義します。タグ。 2. SEO効果を改善するために、などのセマンティックマーカーを提供します。 3.タグを介したユーザーの相互作用を実現するには、フォーム検証に注意してください。 4. JavaScriptと組み合わせて、動的効果を実現するなどの高度な要素を使用します。 5.一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれ、検証ツールが必要です。 6.最適化戦略には、HTTP要求の削減、HTMLの圧縮、セマンティックタグの使用などが含まれます。

HTMLの役割は、タグと属性を使用してWebページの構造とコンテンツを定義することです。 1。HTMLは、読みやすく理解しやすいようなタグを介してコンテンツを整理します。 2。アクセシビリティとSEOを強化するには、セマンティックタグなどを使用します。 3. HTMLコードの最適化により、Webページの読み込み速度とユーザーエクスペリエンスが向上する可能性があります。

htmlisnotaprogramminglanguage; itisamarkuplanguage.1)htmlStructuresandformatswebcontentusingtags.2)ItworkswithcsssssssssdjavascriptforInteractivity、強化を促進します。
