#父页面弹框代码
<script type="text/javascript" src="/artDialog4.1.7/artDialog.js?skin=default"></script>
<script type="text/javascript" src="/artDialog4.1.7/plugins/iframeTools.js"></script>
function relationHouseFun(accessCode){
art.dialog.open(
"http://huawei.com/decorationEncyclopediaContent/setContentHouse?accessCode="+accessCode+"&systemCode="+"IP",
{
title: '关联户型-'+accessCode,
width: '750px',
height: '600px',
id:accessCode
}
);
}
子页面发送消息:
window.parent.postMessage({"accessCode" : accessCode}, "*")
父页面监听消息并关闭弹框:
window.addEventListener("message",(event)=>{
art.dialog.get(event.data.accessCode).close();
})
上述用到了两个知识点
1. 子页面向父页面发送请求
1.1因为考虑到子页面和父页面存在跨域问题所以用postMessage发送请求,addEventListener监听请求。
2. artdialog关闭弹出窗口
2.1打开子页面时,增加一个id的参数。
2.2 子面页面发送请求,父页面监听到之后,关闭弹框