JavaScriptの基本的なインタラクションの詳細な説明

JavaScriptの基本的なインタラクションの詳細な説明

1. 要素の入手方法

文書から入手

文書に記載されている限り、取得されます

ID取得

  • 基本構文: document.getElementById(id value);
    • 文書: 取得の範囲を示す文書
    • get:要素を取得:要素を取得 By:through..
    • 返される要素オブジェクト
  • 戻り値: 特定の要素が取得された場合はそれを返し、そうでない場合は null を返します。
  • IDはドキュメント下でのみ取得可能であり、取得範囲をカスタマイズすることはできません。
  var box = document.getElementById("box1");
        console.log(box);//<div id="box1">私は DIV です</div>
        var box = document.getElementById("box2");
        console.log(ボックス); //null
        var myH2 = document.getElementById("my-h2");
        コンソールにログ出力します。

クラス名 (className) を取得します。

  • 基本構文: document.getElementsByClassName(クラス名 値);
    • 文書: 取得の範囲を示す文書
    • get:Get 要素:Elements (複数) 作成者: through..
    • 取得された要素オブジェクトは動的擬似配列である
    • トラバーサル形式で印刷できる
  • 戻り値: 取得された場合、インデックスと値で構成される要素コレクション HTMLCollection を返します。0 は最初の項目に対応し、1 は 2 番目の項目に対応し、以下同様です。長さ属性があります。最後の項目のインデックスは collection.length -1 です。取得されなかった場合は、長さ 0 の空のコレクションを返します。
  • 長さ属性はコレクションの長さまたはコレクション内の要素の数です。
    • コレクション.長さ;
  • コレクション内の特定の要素を取得する
    • コレクション [インデックス]
 var テスト = document.getElementsByClassName("テスト");
        console.log(テスト);
        console.log(tests.length); //長さを取得します //コンソールに直接出力します console.log(tests[0]);
        コンソールにログ出力します。
        console.log(テスト[テストの長さ - 1]);
        // 保存します var oDiv = tests[0];
        var oH2 = テスト[1];
        コンソールにログ出力します。
        var test1 = document.getElementsByClassName("test1");
        コンソールにログ出力します。
        コンソールにログ出力します。
        console.log(test1[1]); //このサブタイトルまたはインデックスがない場合は、コレクション内の位置が初期化されていないか、undefined の場合は undefined が返されます。
        var hello = document.getElementsByClassName("hello");
        console.log(hello, hello.length);
        console.log(hello[0]); //未定義

タグ名 (tagName)

  • 基本構文: document.getElementsByTagName(タグ名);
    • 文書: 取得の範囲を示す文書
    • get:Get 要素:Elements (複数) 作成者: through..
  • 戻り値: 取得された場合、インデックスと値で構成される要素コレクション HTMLCollection を返します。0 は最初の項目に対応し、1 は 2 番目の項目に対応し、以下同様です。長さ属性があります。最後の項目のインデックスは collection.length -1 です。取得されなかった場合は、長さ 0 の空のコレクションを返します。
  • 長さ属性はコレクションの長さまたはコレクション内の要素の数です。
    • コレクション.長さ;
  • コレクション内の特定の要素を取得する
    • コレクション [インデックス]
   タグ名によって要素を取得するには、 oLis メソッドを使用します。
        コンソールにログ出力します。
        // 長さを取得します console.log(oLis.length);
        // 特定の要素を取得します console.log(oLis[0]);
        コンソールログ(oLis[1]);
        コンソールログ(oLis[2]);
        コンソールにログ出力します。

取得範囲をカスタマイズする

親要素: 特定の要素である必要があります

  • 親要素.getElementsByClassName(クラス名 値);
  • 親要素.getElementsByTagName(タグ名);
// ol の下の li を取得します
        // 親要素を取得します。var wrap = document.getElementById("wrap");
        コンソールログ(ラップ);
        // var oLis = wrap.getElementsByClassName("test");
        var oLis = wrap.getElementsByTagName("li");
        コンソールにログ出力します。
        console.log(oLis.length);
        コンソールにログ出力します。
        コンソールログ(oLis[1]);
        コンソールにログ出力します。
        // ul の下の li を取得します
        // 親を取得します var wrap1 = document.getElementsByClassName("wrap");
        コンソールログ(ラップ1);
        コンソールログ(wrap1[0]);
        コンソールログ(wrap1[1]);
        // var ullis = wrap1[1].getElementsByClassName("test");
        var ullis = wrap1[1].getElementsByTagName("li");
        コンソールにログ出力します。
        console.log(ullis.length);
        コンソールにログ出力します。
        コンソールにログ出力します。
        コンソールにログ出力します。

2. マウスイベント

バインディングイベントも特定の要素である必要があり、コレクションを直接操作することはできません。

  • onclick クリックイベント
  • ondblclick ダブルクリックイベント
  • onmousedown マウスが押された
  • onmouseup マウスが上げられる
  • onmousemove マウスの動き
  • oncontextmenu 右クリック
  • onmouseover マウスが動く
  • onmouseout マウスが外に出る
  • onmouseenter マウスが入る
  • onmouseleave マウスが離れる
  <div id="box"></div>
    <ul id="myUl">
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    <スクリプト>
   var box = document.getElementById("box");
   コンソールログ(ボックス);
   var myUl = document.getElementById("myUl")
   コンソールにログ出力します。
   var oLis = myUl.getElementsByTagName("li");
   コンソールにログ出力します。
            // - onclick クリックイベント box.onclick = function() {
                console.log("クリック");
            }
            // - ondblclickダブルクリックイベント oLis[0].ondblclick = function() {
                console.log("ダブルクリックイベント");
            }
            // - onmousedown マウスが押された oLis[1].onmousedown = function() {
                console.log("マウスが押されました");
            }
            // - onmouseup マウスが上がる oLis[1].onmouseup = function() {
                console.log("マウスを離す");
            }
            // - onmousemove マウス移動 oLis[1].onmousemove= function() {
                console.log("マウスの移動");
            }
            // - oncontextmenu 右クリック oLis[2].oncontextmenu = function() {
                console.log("右クリック");
            }
            // - onmouseover マウスが移動します myUl.onmouseover = function() {
                console.log("マウスが移動しました");
            }
            // - onmouseout マウスが外に出る myUl.onmouseout = function() {
                console.log("マウスアウト");
            }
            // - onmouseenter マウスが入る myUl.onmouseenter = function() {
                console.log("マウス入力");
            }
            // - onmouseleave マウスが離れる myUl.onmouseleave = function() {
                console.log("マウスが離れる");
            }
    </スクリプト>
  • onmouseover マウスが動く
  • onmouseout マウスが外に出る
  • onmouseenter マウスが入る
  • onmouseleave マウスが離れる

違い:

onmouseover と onmouseout は、自身のイベントの対応するイベントをトリガーするだけでなく、親イベントの対応するイベントも再度トリガーします。

onmouseenter と onmouseleave: 自身のイベントの対応するアクションのみをトリガーし、親イベントの対応するアクションはトリガーしません。

3. 要素操作

原則:価値を与えることは設定であり、価値を与えないことは取得である

要素に対するすべての操作は特定の要素に対して行う必要があり、コレクションを直接操作することはできません。

1. 操作要素の内容

要素から取得されるコンテンツは文字列であり、コンテンツがない場合には空の文字列が取得されます。

フォーム要素のコンテンツの操作

  • 設定: フォーム要素.value = value;
  • 取得: フォーム要素.値;

// 複数の割り当ては以前の割り当てを上書きします

// 要素を取得する var inputs = document.getElementsByTagName("input");
var btn = document.getElementsByTagName("ボタン")[0];
console.log(入力、btn);
// 2つの入力ボックスの合計を3番目の入力ボックスに表示します // イベントをバインドします // 関数内のコードは、イベントがクリックされるたびに再実行されます btn.onclick = function () { // 実行する内容 // 2つの入力ボックスの値を取得します var oneVal = inputs[0].value;
    var twoVal = 入力[1].値;
    コンソールにログ出力します。
    // 文字列に遭遇したら、まずそれを数値に変換します。var total = parseFloat(oneVal) + parseFloat(twoVal);
    console.log(合計);
    // 3番目の入力ボックスに合計を設定します。inputs[2].value = total;
}

通常の終了タグを操作する

  • 設定: フォーム要素.innerText/innHTML = value;
  • 取得: フォーム要素.innerText/innHTML;
  • 違い: innerText はテキストのみを認識しますが、innHTML はテキストとタグの両方を認識します。
タグ名で要素を取得する
var h2 = document.getElementsByTagName("h2")[0];
var p = document.getElementsByTagName("p")[0];
コンソールにログ出力します。
// 設定: フォーム要素.innerText/innHTML = value;
// 後者の設定は前者をカバーします // div.innerText = "I am div";
// div.innerText = "<h6>私はdivです</h6>";
// div.innerHTML = "私はdivです";
div.innerHTML = "<h6><a href='https://www.baidu.com'>私はdivです</a></h6>";
h2.innerHTML = "私はH2です";
// 取得: フォーム要素.innerText/innHTML;  
console.log(div.innerText);//私はdivです
console.log(div.innerHTML);//<h6><a href="https://www.baidu.com">私はdivです</a></h6>
コンソールにログ出力します。
コンソールにログ出力します。

2. 操作要素の属性

運営構造の本質的な特性

  • 設定: element.attribute = value; 見つからない場合は空の文字列を返します
  • 取得: element.attribute;

要素.id = 値;/要素.id;
element.className = 値;/element.className;
要素.title = 値;/要素.title;
...

// 要素を取得します var div = document.getElementsByTagName("div")[0];
// div.className = "myBox" を設定します。
div.title = "私はdivです";
// 取得 console.log(div.id);
console.log(div.className);
コンソールにログ出力します。

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • Javascriptの基本を詳しく説明
  • Javascript の基礎: 演算子とフロー制御の詳細な説明
  • JavaScriptの基本構文とデータ型の詳細な説明
  • 組み込みオブジェクトに関するJavascriptの基礎
  • JavaScript 関数型プログラミングの基礎
  • JavaScriptの基礎を学ぶ

<<:  DockerコンテナがJupyterにアクセスできない問題の解決策

>>:  HTML特殊文字の徹底分析

推薦する

Centos7 サーバーで jar パッケージ プロジェクトを開始する最良の方法

序文Linux 上で jar パッケージを実行する方法は誰もが知っています。なぜ別々に話したいのでし...

js に基づいて大きなファイルのアップロードとブレークポイントの再開を管理する方法

目次序文フロントエンド構造バックエンド構造(ノード+エクスプレス) FormDataに基づくファイル...

JavaScript で簡単なモグラ叩きゲームを実装する

この記事では、モグラ叩きゲームを実装するためのJavaScriptの具体的なコードを参考までに紹介し...

MySQLインスタンスが起動できない問題の分析と解決

目次序文シナリオ分析要約する序文数日前、友人がWeChatで私に連絡してきて、マシンがダウンタイムか...

border-image を使用してテキストバブルの境界線を実装する方法のサンプルコード

開発中に、非常に単純なテキストバブル効果に遭遇しました。これは、おおよそ次のようになります。 うーん...

Linux でソースインストールされたパッケージを簡単に削除する方法

ステップ1: Stowをインストールするこの例では CentOS を使用しているため、拡張 EPEL...

ulとliの基本的な使用法の分析

ナビゲーション、少量のデータテーブル、中央揃え<!DOCTYPE html PUBLIC &q...

検証コードケースのJavaScript実装

この記事では、検証コードの効果を実現するためのJavaScriptの具体的なコードを参考までに共有し...

JSはカード配布アニメーションを実現します

この記事の例では、カード配布アニメーションを実装するためのJSの具体的なコードを参考までに共有してい...

CentOS 8 カスタム ディレクトリ インストール nginx (チュートリアルの詳細)

1. ツールとライブラリをインストールする# PCRE は、Perl 互換の正規表現ライブラリを含...

js でクラスセレクターと名前属性セレクターを実装する手順の例

jQuery の登場により、DOM の操作効率が大幅に向上し、開発がより高いレベルに引き上げられまし...

MySQL でパーティション分割後にクエリを実装するために MRG_MyISAM (MERGE) を使用する例

大量のデータベース データを最適化することは非常に高度な科学であり、開発者が習得する必要がある専門的...

JSはreduce()メソッドを使用してツリー構造データを処理します

目次意味文法例1. 初期値initが渡されない2. 初期値を渡す場合3. アレイの重複排除4. Re...

画像にマウスを置いたときにズームイン/ズームアウトするには JS を使用します

マウスが画像上にあるときにズームインおよびズームアウトするには、JS を使用します。具体的なコードは...

MySQL 8.0の落とし穴の詳細な説明

本日、MySQL 8.0 をアップデートしました。最初の問題: Navicatがデータベースに接続で...