前端学习之路Electron——子窗口传递父窗口

子窗口html部分:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>子级页面</title>
</head>
<body>
    <div id='children'>
        这是一个子窗口页面
    </div>

</body>
<script>
    var children = document.querySelector('#children');
    children.onclick = function(e){
        window.opener.postMessage('正在待命');
    }
</script>
</html>

父html部分:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- <button id="btn">
        打开新的窗口
    </button>
    <div>

    </div> -->
    <a id="aHref" href="https://www.baidu.com/">打开外部链接</a>
    <div id="myweb">
        open myweb
    </div>
    <div id='fatview'>

    </div>
    <script src="./render/openweb.js"></script>
</body>
</html>

父窗口的JS部分:

window.addEventListener('message',(msg)=>{
    let {data} = msg
    let fatview = document.querySelector('#fatview');
    // fatview.innerHTML = JSON.stringify(data)
    fatview.innerHTML = data
})
const {shell} = require('electron');
const aHref = document.querySelector('#aHref');
aHref.onclick = function(e){
    e.preventDefault();
    let href = this.getAttribute('href');
    shell.openExternal(href)
}
const myweb = document.querySelector('#myweb');
myweb.onclick = function(e){
    window.open('./chidpage.html')
}
window.addEventListener('message',(msg)=>{
    let {data} = msg
    let fatview = document.querySelector('#fatview');
    // fatview.innerHTML = JSON.stringify(data)
    fatview.innerHTML = data
})

注释的这行为字符串模式

注意

这里是  ./ 而不是 ../
myweb.onclick = function(e){
    window.open('./chidpage.html')
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值