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特殊文字の徹底分析

推薦する

Docker デプロイメント Springboot プロジェクト例の分析

この記事は主に、docker デプロイメント springboot プロジェクトのサンプル分析を紹介...

Linux で open-vswitch をインストールおよびアンインストールする方法

1. ソースコードからovsをコンパイルしてインストールします。依存関係をインストールします: # ...

HTML+CSSを使用してTG-visionホームページを作成する方法

今回はHTML+CSSレイアウトを使用して、TG-vision Shuanghui Mediaのホー...

MySQLは複数テーブル関連統計(サブクエリ統計)の例を実装します

この記事では、例を使用して、MySQL で複数テーブルの関連統計を実装する方法について説明します。ご...

jsはショッピングカートの加算と減算、価格計算機能を実現します

この記事では、ショッピングカートの増減と価格計算を実現するためのjsの具体的なコードを紹介します。具...

Linux 7.7 でスワップ パーティション SWAP を設定する方法

Linux システムの Swap パーティション、つまり swap パーティションは、一般に仮想メモ...

DOSBox を起動後に自動的にコマンドを実行する方法

DOSBox を使用すると、Windows で DOS をシミュレートし、楽しい作業を行うことができ...

純粋な CSS でカスタムラジオボタンとチェックボックス機能を実装する

1. 効果を達成する 2 知識ポイント2.1 <label> タグHTML では、<...

MySQL テーブルの追加、削除、変更、クエリの基本チュートリアル

1. 作成する [テーブル名] (フィールド1、フィールド2、...) 値 (値1、値2、...) ...

JavaScript の Set データ構造の詳細な説明

目次1. セットとは何か2. セットコンストラクタ2.1) 配列2.2) 文字列2.3) 議論2.4...

CSS3 で半透明の背景画像と不透明なコンテンツを実現する方法の例

以前のブログのログインページを作成していたときに、この問題に遭遇しました。突然、透明な背景画像と不透...

Raspberry Pi 3B+ に 64 ビット Ubuntu システムと Docker ツールをインストールする詳細な手順

Raspberry Pi 3B に 64 ビット アプリケーション (64 ビット JDK など) ...

MySQLはinet_atonとinet_ntoaを使用してIPアドレスデータを処理します。

この記事では、適切な形式を使用して IP アドレス データをデータベースに保存し、IP アドレスを簡...

JavaScript で一意の ID を生成するいくつかの方法

考えられる解決策1. Math.randomは[0,1)の範囲の乱数を生成します。 //今回は生成さ...

CSS3の3D効果を使って立方体を作成する

CSS3 の 3D 効果を使用して立方体を作成する方法を学ぶと、3D シーンの回転と変位のプロパティ...