ホームページ  >  記事  >  ウェブフロントエンド  >  js_javascriptスキルの実行遅延問題の分析

js_javascriptスキルの実行遅延問題の分析

WBOY
WBOYオリジナル
2016-05-16 16:43:341450ブラウズ

このコードを見てください:

<body>
  <script src="deffer.js"></script>
  content
 </body>

defer.js の内容は次のとおりです:

alert(1)

このようにして、警告ウィンドウが閉じるまでページは空白になります。アラート ウィンドウによりページのレンダリングが続行されないためです。

このような問題を回避するために、HTML 仕様では deffer 属性と async 属性が定義されています。これら 2 つの属性の具体的な定義についてはここでは説明しません。いずれにせよ、これらはこのページを実行する必要があることをブラウザーに伝えるために使用されます。ページのレンダリングが完了した後、スクリプトの実行時にページがレンダリングされるようにします。

<body>
  <script deffer async src="deffer.js"></script>
  content
 </body>

defer または async が追加された複数のスクリプトの場合、その実行順序はページに表示される順序とは関係がないことに注意してください。 HTML 仕様では遅延スクリプトを順番に実行する必要があると定義されていますが、ブラウザは実際にはこの規則に従っていません。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。