私は三つのファイルでウェブサイトがあります。window.onloadに関数を割り当てるときにスクリプトの順序が重要なのはなぜですか?
のindex.htmlを
<html>
<head>
<script src="First.js"></script>
<script src="Second.js"></script>
</head>
<body></body>
</html>
First.js
window.onload = Main;
Second.js
function Main() { var foo = 1; }
ページを開くと、変数 'foo'が '1'に設定されていると思います。代わりに、私はページを開くと、それは壊れていることを示す'メインは定義されていません'と 'メイン()'が呼び出されることはありません。
ページが完全に読み込まれ、両方のスクリプトが読み込まれるまでウィンドウの '.onload'イベントが発生しない場合、なぜウィンドウオブジェクトに 'Main( ) 'メソッドを' Second.js 'に挿入しますか? 'Main()'はグローバルにアクセス可能な関数であるべきですか?
注:私はスクリプトをロードする順番を変更することができますし、私のコードはうまくいくはずですが、それは私の質問の目的ではありません。私が本当にやりたいことは、私の前提を立証することです。 Second.jsがロードされるまで
2つのファイルを含める場所にHTMLファイルを投稿してください。 – Saebekassebil