次のようにコードコードをコピーします。
<スクリプトsrc = "../ cgi-bin/delscript.js" defer> </scrip>
延期の役割は、スクリプトを実行する前にドキュメントが読み込まれているため、回避できない問題が見つからないことです---いくつかの問題
<button id = "mybutton" onclight = "alert( 'ok')"> test </button>
<スクリプト>
mybutton.click();
</script>
<スクリプト>
mybutton.click();
</script>
<button id = "mybutton" onclight = "alert( 'ok')"> test </button>
<スクリプトDefer>
function document.body.onload(){
alert(document.body.offseetheight);
}
</script>
Deferの追加は、ページが完全に入力された後に実行することに相当します。これはWindow.onloadと同等ですが、Window.onloadよりも柔軟です!
Deferは、スクリプトプログラムの強力な機能における「未知のヒーロー」です。これは、すぐに実行する必要のないコードを含むブラウザのスクリプトセグメントを指示し、SRC属性と組み合わせることができます。 。
- しかし、ドキュメントがロードされてからスクリプトを実行します
最後に2つのポイントに注意してください。
1. document.writeが直接出力効果を生成するため、Defer ScriptプログラムセグメントのDocument.writeコマンドに電話しないでください。
2。そして、Defer Scriptプログラムセグメントですぐに使用するグローバル変数または関数を含めないでください。
一般的に使用される最適化方法は、スクリプトがすぐに実行する必要がない場合、<script>タグに「延期」プロパティを設定します。 (即時のスクリプトは関数ブロックに含まれていないため、読み込みプロセス中に実行されます。)「延期」プロパティを設定した後、IEはスクリプトがロードおよび実行されるのを待つ必要はありません。このページはより速くロードされます。一般的に言えば、これは、即時スクリプトが関数ブロックに最適に配置され、ドキュメントまたはボディオブジェクトのオンラインハンドルで関数を処理することも示しています。一部のスクリプトがユーザーの操作に依存する必要がある場合、それは例、クリックボタン、または特定の領域へのマウスのために実行されます - この属性を使用するのは非常に便利です。ただし、ページの読み込みや読み込み中に実行する必要があるスクリプトがいくつかある場合、Defer属性を使用することの利点はあまり大きくありません。
それらはすべて延期によって引き起こされます。
<style = 'Line-Height:15pt;'>このサイトでのGoogle広告今日、このサイトをチェックしてみると、このサイトに行きましたこのようなウェブサイトは、この理由をチェックした後、延期の理由であることがわかりましたIEでは、読み込みスクリプトが遅れたため、Google ADスクリプトのためにdocument.writeを作成する方法を使用します。延期上の理由により、Google ADのスクリプト検出はiframeのiframeです。 Google広告のコンテンツが取得され、ページ全体がカバーされているため、全文を表示する現象も引き起こします。 </p>
<style = 'line-height:150%:15pt;みんなのインタビューの困難によって引き起こされた天国の謝罪! </p>
<p style = 'line-height:150%;'>さらに、Firefoxを使用してこのサイトにアクセスし、速度とページレイアウトの一貫性を解析することをお勧めします。 </p>