我使用window.open打开一个新标签。新选项卡在脚本标记中定义了一个javascript myfunction
函数。从打开新窗口的窗口,我想运行该功能。
我该怎么做?
由于
像
这样的东西var a = window.open("mypage.html", "_blank");
a.myfunction("hi");
修改
这不起作用。它没有做警报。
开瓶器
var w = window.open("../scripts/map.php", "_blank");
w.postMessage("The user is 'bob' and the password is 'secret'", "*");
新标签
function receiveMessage(event) {
alert(event.data);
}
window.addEventListener("message", receiveMessage, false);
答案 0 :(得分:7)
var a = window.open("mypage.html", "_blank");
a.focus();
a.addEventListener('load', function(){
a.myfunction("hi");
}, true);
答案 1 :(得分:0)
假设php文件提供了新窗口的内容:
window.open('http://www.example.com/myFile.php?parameter=' + parameter, 'myWindow', 'width=500,height=500,scrollbars=yes').focus();
然后在myFile.php的php部分:
$myParam = (isset($_GET['parameter'])) ? $_GET['parameter'] : null;
然后使用body onload调用函数:
<head>
<script>
var myParam = '<?= $myParam ?>';
</script>
</head>
<body onload="myFunction()">
该函数测试是否存在$ myParam:
function myFunction() {
if (myParam) {
//do Something
}
}