ホームページ > ウェブフロントエンド > jsチュートリアル > ページロードでJavaScriptの閉鎖と実行

ページロードでJavaScriptの閉鎖と実行

Lisa Kudrow
リリース: 2025-03-10 00:59:08
オリジナル
892 人が閲覧しました

Closures and executing JavaScript on page load

この投稿は、Webページが終了した後にJavaScriptコードを実行するための以前に公開された手法で拡張されています。 コアコードは、JavaScriptクロージャーを使用します:

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

addLoadEvent(nameOfSomeFunctionToRunOnPageLoad);
addLoadEvent(function() {
  /* more code to run on page load */ 
});
ログイン後にコピー
閉鎖は、周囲の語彙環境(アクセス可能な変数)を備えた関数をバンドルします。これは、JavaScriptで特に強力です。 この例を考えてみましょう:

function createAdder(x) {
  return function(y) {
    return y + x;
  }
}

addThree = createAdder(3);
addFour = createAdder(4);

document.write('10 + 3 is ' + addThree(10) + '<br>');
document.write('10 + 4 is ' + addFour(10));
ログイン後にコピー

関数を返します。 重要なことに、返された関数(閉鎖)は、その作成コンテキストからの値を「覚えています」。 createAdder(x) 3を追加し、x4を追加し、閉鎖の状態保存を示します。addThree addFour

関数は閉鎖を活用して、複数の

ハンドラーを管理します。 addLoadEventが既に定義されている場合、新しい関数がラップされ、既存の関数と新しい関数の両方がページの読み込み時に順次実行されるようにします。 これにより、複数の呼び出しをwindow.onloadにチェーンすることができ、ページの読み込みで実行された関数のキューを作成します。 window.onload閉鎖は強力なツールですが、理解が必要です。 さらなる調査をお勧めします(元の投稿にリンクされているウィキペディアの記事を参照してください)。 addLoadEvent

よくある質問:

このセクションでは、JavaScriptの閉鎖とページロードの実行に関する一般的な質問に対処し、簡潔な回答を提供します。 元のFAQセクションは保持されますが、読みやすさと簡潔さの向上のために再フォーマットされています。 情報は失われていません。 質問と回答は、より良い流れと冗長性を回避するために言い換えられます。

以上がページロードでJavaScriptの閉鎖と実行の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート