0

重複の可能性:
複数のオンロード ハンドラの追加

既存の onload に別の onload コールバックを追加できますか?

サイトに bigpipe を実装しました。リソース (javascript) はオンデマンドで読み込まれ、javascript が適切に読み込まれた後、javascript コードが実行されます。

これは私が持っているJavaScriptコードです

var code = document.createElement('script');
 code.setAttribute("type", "text/javascript");
 code.setAttribute("src", this.file);
 code.onload = this.onComplete.bind(this);
 code.onreadystatechange = code.onload; // ie fix

このコードが実行された後、この上に別の onload コールバックを追加して、このリソースの読み込みが完了すると両方がトリガーされるようにすることはできますか?

4

1 に答える 1

0
function onDone ()
{
    alert('im done');
}

function onComplete ()
{
    alert('im completed');
}

var code = document.createElement('script');
code.setAttribute("type", "text/javascript");
code.setAttribute("src", '/js/jquery.js');
code.setAttribute("id", 'jquery');
code.onload = onComplete.bind(this);
document.getElementsByTagName("head")[0].appendChild(code);


resource = document.getElementById('jquery');
onloadPrevious = resource.onload;
resource.onload = function () {

     if (typeof onloadPrevious == "function")
         onloadPrevious();
     onDone();

}
于 2012-11-12T07:57:54.243 に答える