iframe子页面和父页面如何传值通信
业务场景,在index.html的主页面中,我们希望嵌套子页面,这时候就涉及到父子页面的通信问题。
以下的都是在同域的基础上的:
1.相互获取dom元素
1.1 在父页面获取子页面的dom元素:
document.getElementById('iframe_id).contentWindow.document.getElementById('domId');
//先获取iframe的Id,再在iframe所在的document找dom元素,根据id查找;
1.2 子页面获取父页面的dom元素
window.parent.document.getElementById('mask_id'); //window.parent可以回到父页面
2.相互调用方法
父页面调用子页面方法:iframeName.window.childMethod();
子页面调用父页面方法:parent.window.parentMethod();
3.相互调用变量
子页面访问父页面变量:parent.父页面变量;
父页面访问子页面变量: document.getElementById('iframe_id).子页面变量;
作者:oRa