ホームページ >ウェブフロントエンド >jsチュートリアル >js で onload、onresize、onscroll イベントを動的に追加する (代替方法)_javascript スキル

js で onload、onresize、onscroll イベントを動的に追加する (代替方法)_javascript スキル

WBOY
WBOYオリジナル
2016-05-16 17:45:201034ブラウズ

window の onload、onresize、および onscroll イベントは他のイベントとは異なり、attachEvent や addEventListener を使用して追加することはできません。

言い換えると、次のようにすることしかできません (onload を例に挙げます。以下も同様):

コードをコピー コードは次のとおりです:

window.onload = function()
{
// ...
}; 🎜>しかし、問題は、onload 用の新しいイベント ハンドラーを追加する場合、window.onload に値を直接割り当てることができないことです。そうしないと、以前の割り当てが上書きされてしまいます。

これを実行できます
:

コードをコピーします コードは次のとおりです。 var oldLoadHandler = window.onload;
window.onload = function()
{
if (oldLoadHandler)
{
oldLoadHandler(); >}
newLoadHandler();
};


ezj の方が便利です。



コードをコピー
コードは次のとおりです: $(window).ready(onloadHandler1) ; $(window).ready(onloadHandler2);



説明

通常接触する onload イベントは document.body です。 onload ですが、これは実際には IE の誤解によるものです。正しくは window.onload である必要があります。IE、Firefox、および Chrome では有効です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。