0

DOM の準備ができた後 (またはそれが不可能な場合は onload の後に) 実行する必要がある外部スクリプトを作成しました。

スクリプトにパラメーターが必要なため、このメソッドを使用してスクリプトを動的にロードします。

<script type="text/javascript">
document.write(unescape("%3Cscript src='mydomain.com/script.js.php?u="+encodeURIComponent(window.location.host)+"' type='text/javascript'%3E%3C/script%3E"));
</script>

時間通りにスクリプトを開始するために、クロス ブラウザー メソッドを使用して dom ready または onload イベントをアタッチします。

私の質問: スクリプトを実行してすぐにスクリプトを実行するときに DOM の準備ができていると仮定できますか、それとも DOM の準備ができていないと仮定して、DOM 準備完了イベント (またはドキュメントの読み込み) にアタッチできますか?

どちらも確実に想定できない場合、私の質問は、スクリプトの実行時に DOM が (別のブラウザーで) 既に準備ができているかどうかを確認するにはどうすればよいかということです。この場合、DOM Ready イベントまたはドキュメント ロード イベントでスクリプトを開始するメソッドは、イベントが既に発生しているため機能しません。

注: 1.スクリプトが添付される Web サイトを制御することはできません。2. Jquery やその他のライブラリを使用できません。

4

2 に答える 2

2

domがまだ準備ができていないことはほぼ確実です。

これは、これを必要に応じて機能させるための良いリファレンスです。

私はどちらかです:

1)そのスクリプトを動的にロードし、関数をonloadにアタッチして、そのオフサイトの.jsで必要なことを呼び出したり実行したりすることもできます。

2)DOMの準備ができた後でのみスクリプトをロードします。

于 2009-02-20T08:03:02.733 に答える
0

スクリプトbodyをドキュメントの末尾近くに配置します。スクリプトが呼び出されると、上記のすべてが使用可能になります (スクリプト タグを確認するには、ブラウザーがスクリプトを解析する必要があるため、QED)。

他のリソース (画像やフレームなど) は、その時点でまだ読み込まれている可能性があることに注意してください。

于 2009-02-20T08:31:38.077 に答える