次のように コードをコピーします コードは次のとおりです。 スクリプト要素の onload イベントと onreadystatechange イベントの両方をサポートします;/title> スクリプト> <br></head> <br></html> <br><br> <br> /8: ポップアップ 2 <br>IE9/10: ポップアップ 2、1 </div>Firefox/Safari/Chrome/Opera: ポップアップ 1 <br>テスト結果は、IE9 がスクリプト オンロード イベントをサポートし始めたことを示しています。私たちは、js ファイルがロードされたかどうかを判断するために常に上記 2 つのイベントを使用してきました。 IE では onreadystatechange イベントが使用され、readyState の値は読み込みが完了したかどうかを判断するためにイベント ハンドラーで使用されることは以前から知っていました。他のブラウザは onload イベントを使用します。 <br><br><br><br><br>コードをコピー <div class="codetitle"> <span><a style="CURSOR: pointer" data="62126" class="copybut" id="copybut62126" onclick="doCopy('code62126')"> コードは次のとおりです: <u></u> </a>if(isIE){ </span>script .onreadystatechange = function(){ </div>if(this.readyState == 'loaded' || this.readyState == 'complete'){ <div class="codebody" id="code62126">callback(); <br>} <br> }else{ <br>script.onload = function(){ <br>callback(); <br>} <br>} <br><br> <br>今のところこの書き方で問題ありません。ただし、IE9/10では以下の記述によりコールバックが2回実行される場合があります<br><br><br> </div> <br>コードをコピー<br><div class="codetitle"> <span> コードは以下の通りです。 <a style="CURSOR: pointer" data="40100" class="copybut" id="copybut40100" onclick="doCopy('code40100')"><u> </u>script.onload = script.onreadystatechange = function(){ </a>if(!this.readyState || this.readyState == "ロード済み" || this.readyState == "完了" ){ </span> callback(); </div>} <div class="codebody" id="code40100">} <br><br> <br>この書き方のコツは、onload と onreadystatechage の両方が同じ関数を使用することです。onreadystatechage イベントはサポートされていません。 Firefox/Safari/Chrome/Opera では、readyState 属性がないため、!this.readyState はこれらのブラウザ用です。 ReadyState は IE ブラウザ用です。キャッシュの場合は読み込みが完了する場合があります。したがって、2 がそれ以下になることはありません。ただし、IE9/10 はすでに onload イベントをサポートしているため、コールバックは 2 回実行されます。 <br> <br>関連: <br> </div> <br> <br><p>http://www.w3.org/TR/html401/interact/scripts.html#h-18.2.1 <a href="https://developer.mozilla.org/En/HTML/Element/Script" target="_blank"></a> </p> <p>http://www.w3.org/TR/html5/scripting-1.html#script<a href="http://www.w3.org/TR/html401/interact/scripts.html#h-18.2.1" target="_blank"></a> </p> <p>https://developer.mozilla.org/En/HTML/Element/Script <a href="http://www.w3.org/TR/html5/scripting-1.html#script" target="_blank"></a></p>