在JavaScript中,调用子窗口的函数通常涉及到window.open
方法来打开一个新的浏览器窗口或标签页,并且可以通过window.opener
属性或者iframe
元素来实现父子窗口之间的通信。
window.open
: 这个方法用于打开一个新的浏览器窗口或标签页,并返回一个对新窗口的引用。window.opener
: 在新打开的窗口中,可以通过这个属性访问到打开它的原始窗口。iframe
: 内嵌框架元素,可以在当前页面中嵌入另一个HTML文档,通过contentWindow
属性可以访问到iframe
内的窗口对象。iframe
之间共享数据和调用函数。window.open
打开的新窗口。iframe
嵌入的页面。假设我们有一个父窗口,需要调用子窗口中的一个函数sayHello
。
父窗口代码:
// 打开子窗口
var childWindow = window.open('child.html', 'ChildWindow', 'width=400,height=300');
// 等待子窗口加载完成
childWindow.onload = function() {
// 调用子窗口的sayHello函数
childWindow.sayHello();
};
子窗口代码 (child.html):
<!DOCTYPE html>
<html>
<head>
<title>Child Window</title>
<script>
function sayHello() {
alert('Hello from child window!');
}
</script>
</head>
<body>
<h1>Child Window</h1>
</body>
</html>
postMessage
API进行安全的跨域通信。通过上述方法,可以实现JavaScript中父子窗口之间的函数调用和通信。
领取专属 10元无门槛券
手把手带您无忧上云