HTML で JavaScript を使用する

HTML で JavaScript を使用する

<script> タグ

HTML5では、スクリプトには次の属性があります: async、defer、charset、src、type、

  • 非同期(オプション):

キーワード: 非同期スクリプト、外部ファイル、即時ダウンロード。

タグにこの属性が含まれている場合、スクリプト(外部ファイル)はすぐにダウンロードされます。外部スクリプトファイルに対してのみ有効です。ダウンロード中もページ上の他の操作は実行できます。ダウンロードが完了すると解析と実行が停止され、実行後も解析は続行されますが、実行順序は保証されません。

<script src="js/index2.js" async="非同期"></script>
  • 延期(オプション):

キーワード: 遅延スクリプト、外部ファイル、遅延読み込み。

タグにこの属性が含まれている場合、スクリプトはページが完全に解析または表示されるまで実行を待機できます。これは外部ファイルに対してのみ有効です。同時に defer が指定された 2 つのスクリプトがある場合、遅延により前者が後者より先に実行されます。

<script src="js/index1.js" defer="遅延"></script>
  • 文字セット(オプション):

キーワード: 文字セット

ほとんどのブラウザはすでにその値を無視しているため、ほとんど使用されません。

  • src (オプション):

キーワード: 外部参照

参照する必要がある外部ファイルのアドレスを示します。

  • タイプ(オプション):

キーワード: MIME (スクリプト言語のコンテンツ タイプ)

ブラウザの互換性を最大限に確保するために、type 属性の値は主に text/javascript のままです。この属性が記述されていない場合、デフォルト値は text/javascript のままです。

注意: 外部ファイルを参照する場合、タグ内に他の JS コードを追加しないでください。解析時に、ブラウザは src によって参照される外部スクリプト ファイルのみをダウンロードし、テーブルに埋め込まれたコードは無視されます。

<script> タグの位置

通常、外部ファイル (CSS ファイル、JavaScript ファイルを含む) を含むタグへの参照は、同じ場所 (通常は <head> タグ内) に配置します。

ただし、解析プロセス中に複数の JavaScript 外部ファイルに遭遇すると、すべての外部ファイルが読み込まれるまでページを完全に表示できないため、通常は次のように <body> タグの下部に配置します。

上で <script> に defer 属性があることを説明しましたが、HTML5 で説明されているように、HTML5 では埋め込みスクリプトに設定された defer 属性は無視されます。現在、defer 属性をサポートしているのは IE4 ~ IE7 のみです。IE8 以降は HTML5 標準に完全に準拠するため、<script> を <body> タグの下部に配置するのが依然として最善の選択です。

外部ファイルを参照する利点

  • 保守が簡単: すべての JavaScript ファイルを 1 つにまとめると、HTML コードに触れる必要がなくなるだけでなく、開発者がコードを作成して保守しやすくなります。
  • ブラウジングの高速化: 複数の HTML ページが同じ JavaScript 外部ファイルを参照する場合、ファイルは 1 回だけ読み込まれる (キャッシュされる) ため、ページの読み込み速度を高速化できます。
  • セキュリティ: 外部ファイルを参照する場合、ユーザーが HTML コードを表示すると JavaScript コードは表示されないため、タグ内に記述するよりも安全です。

<noscript> タグ

文字通りの意味は NO-script、つまりスクリプトなしです。つまり、ブラウザが JavaScript をサポートしていない場合は、<noscript> タグ内のコンテンツが表示されます。

  • お使いのブラウザはスクリプトをサポートしていません。
  • ブラウザはスクリプトをサポートしていますが、JavaScript は無効になっています。

上記の 2 つの条件のいずれかが満たされると、<noscript> タグ内のコンテンツが表示されます。

上記のページは、ブラウザが JavaScript をサポートしていないか無効になっている場合にのみ表示されるメッセージをユーザーに提供します。それ以外の場合、ユーザーにはメッセージが表示されず、ページ上の他の要素の表示にも影響しません。

要約する

上記は、私が紹介した HTML で JavaScript を使用するサンプル コードです。お役に立てば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  Linux システムで Tomcat を自動的に起動するための設定方法の紹介

>>:  将来最も成功する企業はテクノロジー企業でしょうか、それともデザイン企業でしょうか?

推薦する

CentOS 上での MySQL 5.6 のコンパイルとインストール、および複数の MySQL インスタンスのインストールの詳細な説明

--1. mysql用の新しいグループとユーザーを作成する # ユーザー追加 -M -s /sbin...

さまざまな種類のMySQLインデックス

インデックスとは何ですか?インデックスは、データベース ストレージ エンジンが指定されたデータをすば...

Vueプロジェクトをパッケージ化してリリースする手順

目次1. 開発環境から本番環境への移行2. 統一されたリクエストパスを設定する3. パッケージ化コマ...

UA による Web サイトのクロールを防ぐ Nginx のクローラー対策戦略

クローラー対策ポリシー ファイルを追加しました: vim /usr/www/server/nginx...

nginx でのリクエストのカウント追跡の簡単な分析

まずは適用方法を説明します。nginxモジュールにはjtxyとjtcmdの2つがあります。 http...

MySQLは2つの日付間の日数、月数、年数を計算します

MySQL 組み込みの日付関数 TIMESTAMPDIFF は、2 つの日付間の秒数、分数、時間数、...

Windows で複数の MySQL インスタンスを実行する方法

序文Windows では、各インスタンスに適切なパラメータを使用してコマンド ラインから複数の My...

CSS3 transition-delay属性のデフォルト値が単位なしの0であり無効である問題を解決します

今日は、CSS3 の transition-delay 属性のデフォルト値 0 に単位がないのは無効...

mysql インストーラ コミュニティ 8.0.16.0 のインストールと構成のグラフィック チュートリアル

mysqlインストーラコミュニティ8.0.16.0インストールグラフィックチュートリアル、参考までに...

Dockerはコンテナ外のコンテナ内でコマンドを実行します

コンテナ内でコマンドを実行したいが、コンテナに入りたくない場合があります。ではどうすればいいでしょう...

nginx を使用して正規表現で指定された URL リクエストを傍受する方法

nginx サーバーnginx は、静的ファイルの処理に非常に効率的な優れた Web サーバーです。...

MySQL インデックス最適化の説明

日常業務では、実行に時間のかかる SQL ステートメントを記録するために、スロー クエリを実行するこ...

面接官がmysqlのcharとvarcharの違いを尋ねたとき

目次charとvarcharの違いcharとvarcharの違い上記は、MySQL における cha...

MySQL データベースの大文字と小文字の区別の問題

MySQL では、データベースはデータ ディレクトリ内のディレクトリに対応します。データベース内の各...

Web2.0製品と機能の簡単な紹介

<br />Web2.0とは何ですか? Web2.0にはソーシャルネットワーク製品とその...