实现父子页面传参数

使用iframes实现父子页面传参数

B.html

<button onclick="handleEvent()">向父页面发送信息</button>
<p>子页面</p>
<script>
// 注册消息事件监听,接受子元素给的数据
window.addEventListener('message', (e) => {
console.log(e)
console.log(e.data);
}, false);

function handleEvent() {
// 向父页面发消息
var a ='测试A数据';
var b ='测试B数据';
window.parent.postMessage(a, '*');
window.parent.postMessage(b, '*');
}

</script>

A.html

<div style="margin-bottom: 20px;">
    <button onclick="handleEvent()">向子页面发送信息</button>
</div>
<iframe src="b.html" id="iframe"></iframe>
<script>
    function handleEvent() {
        // iframe的id
        
        var f = document.getElementById('iframe');
        // 触发子页面的监听事件
        f.contentWindow.postMessage('父页面发的消息', '*');
    }
 
    // 注册消息事件监听,接受子元素给的数据
    window.addEventListener('message', (e) => {
        console.log(e.data);
    }, false);
</script>
 

说明
 
message 将要发送到其他 window的数据。
 


 

posted @ 2023-02-02 08:53  向上丶  阅读(113)  评论(0编辑  收藏  举报