jQuery.globalEval(code)


version 1.0.4 以降

解説

JavaScript コードを、global コンテキストで実行します。

戻り値

  • なし

まず、test ボタンをクリックすると、global コンテキストに変数 test が定義されていないので、"test is undefined." と表示します。
globalEval ボタンをクリックすると、global コンテキストに変数 test を定義するので、再度 test ボタンをクリックすると、その内容が表示されます。

// test ボタン
$("#test").click(function(){
    if(typeof(test) == "undefined") {
        alert("test is undefined.");
    } else {
        alert(test);
    }
});

// globalEval ボタン
$("#globalEval").click(function(){
    // global コンテキストに、 変数 test を追加。
    $.globalEval("var test = 'test variable!'");
});


内部実装

内部実装は、script 要素を生成し、head 要素へ動的に追加し、その後、削除します。
これは、外部 JavaScript ファイルを動的にロードするのと同じ動作です。