2011-01-27 2 views
3

jQueryの$(document).ready()でJavaScript関数を実行し、本文の末尾にあるスクリプトタグのHTMLにそれを含めた点の違いは何ですか?

おかげで、

DLiKS <script>タグ内部

答えて

7

JavaScriptコードは、すぐに評価(実行)されます。この場合、ページはまだ(完全に)解析されておらず、DOMはまだ準備ができていないことに注意してください。

jQuery内のJavaScriptコードready()コールバックは、HTMLソースコード全体がブラウザによって解析された後に発生するDOMContentLoadedイベントで評価されます。このイベントについて
:準備ができてハンドラを定義する近代的な方法は、このあることhttps://developer.mozilla.org/en/Gecko-Specific_DOM_Events

注:また

$(function() { 
    // code 
}); 

、「あなたはドンときに何が起こるかを指摘し、このSO質問を、チェックしてくださいすぐにそれがロードされるように、本体ます 実行の最後にHow many JavaScript programs are executed for a single web-page in the browser?

+0

しかし、DOM準備完了イベントでそれを実行するのと同じように、本文の最後にスクリプトを含めていますか? – DLiKS

+2

あなたは私をFUNCI TONに連れて行ってみませんか! http://www.youtube.com/watch?v=jlmTELeLRwI –

+0

@DLiKS私は自分の答えを更新しました。 –

3
  • スクリプト:tは準備ができてコールバックを使用しています。
  • $ .readyは、ドキュメントが完成した後に実行されます( リンクされたCSSも読み込まれます)。
  • Body.loadは、すべての画像が としてよく読み込まれたときにのみ実行されます。
1

このSO questionが役に立ちます。

クローズボディタグ(</body>)の隣に配置されたスクリプトで関数を呼び出す場合は、$(document).ready(function(){});<head>セクションに使用するのと同じことです。

関連する問題