質問

JavaScriptのキーワードと親と子のウィンドウの関係、特にwindow.openerについて、「with with」キーワードについて何か独特なことに気づきました。私はこれを親のウィンドウからテストしていませんが、子供だけですが、以下の例では注目に値します -

親ウィンドウ(parent.html):

// global scope
function ParentFunc() { alert("I am a parent function"); }

チャイルドウィンドウ(child.html):

// global scope
var baseWin = window.opener;

// "this" keyword corresponds to Child.html when function below is called
function Child_Onclick_Func()
{
  alert("Hi, from Child");
  with (baseWin)
  {
    ParentFunc();
    alert("Hi, from Parent");
  }
  alert("Hi, back to Child");
}

この場合、「with with」キーワードは親ウィンドウに切り替え、2番目のアラートは親ウィンドウに暗黙のオンフォーカスを発射します。 「with」が親ウィンドウに切り替えることに気づいていませんでしたが、今は理にかなっています。

役に立ちましたか?

解決

これは起こるからです window WebブラウザでJavaScriptを実行するときのグローバルネームスペースです。あなたが書くとき:

alert('Hello, World!');

あなたは実際に電話をかけています window.alert 方法。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top