2

DOM 要素が完全に読み込まれたときにイベントを追加したいと考えています。唯一の問題は、スクリプトの実行時に要素がまだ存在しないことです。

私の回避策は、要素がスクリプト内にあるかどうかを定期的にテストすることです

window.setInterval(function(){
    if (document.getElementById("myId"))
        /* do stuff */ ...; 
}, 100);

ここで別の問題が発生します。要素を初めて見つけたとき、要素が完全に読み込まれていることが保証されますか?

  • はいの場合、それは完璧です。
  • いいえの場合、どうすればテストできますか? (まだロードされていない場合は、onload問題なくイベントに追加できます)

私はjQueryを持っていません。

4

1 に答える 1

3

要素を初めて見つけたとき、要素が完全に読み込まれていることが保証されますか?

はい、要素が<img>または では<iframe>ないと私が信じるものでない限り、それは「完璧」です。

もう 1 つの重要な注意事項は次のとおりです。

要素が完全にロードされていなくても、要素にイベントを添付できます。要素が DOM 内にあるという事実は、そのタスクには十分です。

ちなみに、これはjQueryのreadyイベントとjavascriptのonloadイベントの違いです。

于 2013-01-15T23:17:17.427 に答える