子ウィンドウから親に定義されたjavascript関数を呼び出そうとしています。私は、私の人生のために、子プロセスからの関数fooを呼び出すことはできませんJavaScript window.opener parent parent function
<html>
<head>
<title>Test A</title>
<script type="text/javascript">
function get() {
window.opener.foo();
}
</script>
</head>
<body>
<input type="button" value="Call Parent" onClick="get();" />
</body>
</html>
:
親::
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function foo() {
alert ("Hello from parent!");
}
function doStuff() {
var w = window.open("testa.html");
}
</script>
</head>
<body>
<input type="button" value="open" onClick="doStuff();" />
</body>
</html>
と子私はこのような2つのファイルを持っています。私はこれがwindow.openerオブジェクトで可能であるべきだと思ったが、私はこの作業をすることができない。助言がありますか?
あなたは 'http://'や 'file:///'でこれらのページにアクセスしていますか? 'file'プロトコルには起源がないので、あなたはいつでも[SOP](http://en.wikipedia.org/wiki/Same_origin_policy)に失敗し、' opener'にアクセスできなくなります。 –
それが問題だったことがわかりました。私は単純にfile://にアクセスしていました。私はhttp://ディレクトリにそれらをスローすると、うまく動作します。 – RPIBuckHunter
http://とfile:///とは何ですか?それをどのように変更するか。私は同じ問題を抱えています?助けてください。 –