Sto provando a chiamare una funzione javascript definita in un genitore da una finestra secondaria. Ho due file come questo:JavaScript window.opener chiamata genitore funzione
Parent:
<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>
E bambino:
<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>
non posso, per la vita di me, chiamare la funzione foo dal processo figlio. Ho pensato che questo dovrebbe essere possibile con l'oggetto window.opener, ma non riesco a farlo funzionare. Eventuali suggerimenti?
Accedete a queste pagine tramite 'http: //' o 'file: ///'? Il protocollo 'file' non ha un'origine, quindi fallirai sempre con [SOP] (http://en.wikipedia.org/wiki/Same_origin_policy), rendendo inaccessibile l'opzione' opener'. –
Risulta che era questo il problema: stavo semplicemente accedendoli su file: //. Quando li butto nella directory http: //, funziona perfettamente. – RPIBuckHunter
Che cos'è http: // e file: ///? come cambiarlo dall'uno all'altro. Ho lo stesso problema? Per favore aiuto. –