2012-01-20 9 views
0

私は<form>タグを持つページがあります。 formの中には、<form>タグのさまざまな部分にhtmlといくつかのインラインjavascriptがたくさんあります。
そして、ドキュメントの読み込みイベントを待ち受けます。私は、ドキュメントの読み込みが発生すると、このインラインのJavaScriptコードはすべて既に実行されていることを100%確信できますか?マークアップの
例:ドキュメントのロードイベントの前にインラインのJavaScriptコードが実行される場合は、

<body> 
    <form> 
    --html controls--- 
    <script type="text/javascript"> 
     --some code to run here-- 
    </script> 
    </form> 
</body> 

マイその答えはイエスである思考、文書のロード前に実行されるJavaScriptのインラインが、私は証拠を見つけたいです。
ありがとうございます。

すべてのHTMLコントロールがロード

live demo
文書負荷火災のみ編集やJavaScript(インラインまたはsrc属性を持つ)ロードされ、解釈されます。私はこの声明で訂正しますか?

+1

回答する最善の方法は、試してみることです! – cambraca

+0

は絶対に同意します:) – Kai

答えて

4

実行するコードをdomreadyコールバック関数に入れない限り、インラインJavaScriptコードはページをロードする(domreadyの前に)直ちに実行されます。

+0

明確にするために、答えは単に「はい」です。それは他の何よりも前に実行されます – Evert

1

スクリプトタグの解析が終了するとすぐにインラインスクリプトが実行されるため、残りの文書にはまだアクセスできなくなります。一方、ドキュメントのその時点で追加のHTMLを記述することができます。

Firefox 3.5には、インラインスクリプトでdefer属性を設定できるバグがあり、すぐには実行されないことに注意してください。この非標準的な動作は、Firefox 3.6で修正されました。

0

あなたは保証がないと思います 遅いjavascript(emscripten)であれば、オンロードが発生してもコードが実行されている可能性があります。

しかし、私は明確なドキュメントを見つけることができませんでした: https://developer.mozilla.org/en/DOM/window.onload http://msdn.microsoft.com/en-us/library/ie/cc197055%28v=vs.85%29.aspx

http://www.w3.org/TR/html4/html40.txt

のonload =スクリプト[CT] ユーザエージェントは ウィンドウ又はFRAMESET内のすべてのフレームのロードが完了したときのonloadイベントが発生します。この属性は、BODYおよびFRAMESET要素で使用される です。

は私が保証を見つけることができない、あなたがチェックはあなたのインラインスクリプトをあなたの上のsavequardで、最高のためのHPE、またはビルド(例えば重いもの、ここhttps://github.com/kripken/emscripten/wikiからデモ付き)のいずれかの試験天候ができることを完了しました

関連する問題