大家好,又见面了,我是你们的朋友全栈君。
实现的主要原理是:
1.父页面调用子页面函数,选择iframe的id + contentWindow +子页面的函数名([参数列表])
2.子页面调用父页面函数,window.parent.父页面的函数名([参数列表])
以下是测试代码:
父页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>父页面</title>
</head>
<body>
<div id="ss" style="width: 400px;height: 400px; background: darkmagenta;">
<button id="chuancan" onclick="chuandicanshu()">1</button>
</div>
<div id="main" style="position: fixed;left: 200px;top: 200px;background: red;">
<iframe id="childFrame" src="frame.html" width="100" height="100"></iframe>
</div>
<script type="text/javascript">
//调用子页面方法
function chuandicanshu(){
document.getElementById("childFrame").contentWindow.update("你好");
}
function closeParentWindow(){
document.getElementById("main").style.display = "none";
}
</script>
</body>
</html>
子页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>子页面</title>
</head>
<body>
<button id="close" onclick="closeParentWindow()">关闭按钮</button>
<p id="canshu">父页面传过来的参数显示</p>
<script type="text/javascript">
function update(canshujuti){
document.getElementById("canshu").innerHTML = canshujuti;
}
function closeParentWindow(){
window.parent.closeParentWindow();
}
</script>
</body>
</html>
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159727.html原文链接:https://javaforall.cn