再会!
当我从父窗口打开新窗口时,是否有可能在新窗口上执行 javascript?
例如,如果新窗口完全加载,文本字段将更改一个值。
谢谢
这是一个将函数放在子窗口中然后让子窗口运行它的示例。该showTitle
函数将仅显示当前文档标题。子页面将等待特定函数并在它到达时调用它。
父.html:
<html>
<head>
<title>parent</title>
</head>
<body>
<script>
function showTitle() {
alert('Page Title = '+this.document.title);
}
function childLoaded() {
showTitle();
var childWnd=document.getElementById('fchild').contentWindow;
if (!childWnd) return;
childWnd.newFunc=showTitle;
}
</script>
parent<br />
<iframe id=fchild src="child.html" width=300 height=300 onload="childLoaded()"></iframe>
</body>
</html>
child.html:
<html>
<head>
<title>child</title>
</head>
<body>
<script>
var waiter,newFunc=null;
function waitFunc() {
if (newFunc) {
clearInterval(waiter);
newFunc();
}
}
waiter=setInterval(waitFunc, 1000);
</script>
child
</body>
</html>
从新窗口的onLoad()事件中获取参数到父窗口,通知新窗口已经加载。
我希望这能解决你的问题。