main.js
//打开网站
ipcMain.handle("openWeb", e => {
//从事件发送者 e.sender 获取获取到 父窗口(触发此事件的浏览器窗口) 的实例
const parentWindow = BrowserWindow.fromWebContents(e.sender)
const childWindow = new BrowserWindow({ //子窗口
width: 400, //设置窗口宽度(单位:像素)
height: 690, //设置窗口高度
icon: "resource/images/code.ico", //设置窗口图标
autoHideMenuBar:true, //隐藏菜单栏
//resizable: false, //禁止调整窗口大小
x:700, //x表示窗口左上角的水平坐标(单位:像素)
y:100, //y表示窗口左上角的垂直坐标
//parent:parentWindow, //指定当前窗口的父窗口(当前窗口会在父窗口之上显示)
//modal:true //作为一个模态窗口打开, 模态窗口会阻止用户与父窗进行交互
})
childWindow.loadURL("https://dengruicode.com") //加载指定的 url
//当尝试打开新窗口时, 阻止默认行为, 在当前窗口加载 url
childWindow.webContents.setWindowOpenHandler(details =>{
childWindow.loadURL(details.url)
return { action: 'deny' } //阻止默认行为
})
})
index.html
<button id="openWeb">打开网站</button>
index.js
//打开网站
document.querySelector('#openWeb').addEventListener('click', () => {
DRAPI.invoke("openWeb")
})
13.打开新窗口
-- 未经授权禁止转载 --