私は常に最後の onload 関数を取得しますが、両方が必要です。window.onload イベントを削除せずに他の代替オプションはありますか?
window.onload = function(){
alert("first");
}
window.onload = function(){
alert("second");
}
私は常に最後の onload 関数を取得しますが、両方が必要です。window.onload イベントを削除せずに他の代替オプションはありますか?
window.onload = function(){
alert("first");
}
window.onload = function(){
alert("second");
}
addEventListener
最善の解決策は、に割り当てるのではなく、を使用してイベント リスナーを登録することwindow.onload
です。
window.addEventListener('load', function(event) {
// your code
}, false);
これは複数回実行でき、以前のリスナーが上書きされることはありません。
2 番目のものを宣言すると、最初のものと連鎖できます。
var lastOnLoad = window.onload;
window.onload = function(){
lastOnLoad();
alert("second");
}
次のようなユーティリティを作成することもできます。
function addOnLoad(f) {
var lastOnLoad = window.onload;
window.onload = function() {
lastOnLoad();
f();
}
}
次のように呼び出します。
addOnLoad(function(){
alert("first");
});
addOnLoad(function(){
alert("second");
});
編集:または、ThiefMasterが提案することを単に行うこともできます...(私は彼に賛成します!)。
これを試して:
window.addEventListener('load', function() {
alert("first");
}, false)
window.addEventListener('load', function() {
alert("second");
}, false)