想请教下大家 ,使用electron 做为一个壳,使用remote重开窗口,链接线上地址 。 有没有办法能让我在about.html中跟当前客户端做交互 。比如在网页中点击按钮关闭当前窗口。急急急 ~
想请教下大家 ,使用electron 做为一个壳,使用remote重开窗口,链接线上地址 。 有没有办法能让我在about.html中跟当前客户端做交互 。比如在网页中点击按钮关闭当前窗口。急急急 ~
Hi~
可以使用WebContents
的一个method:contents.executeJavaScript(code[, userGesture, callback])
在窗口环境中执行Javascript代码.
演示代码(点击百度logo即可关闭窗口)main.js
'use strict';
const APP = {
version: "1.0.0",
author: "uffy@qq.com",
root: __dirname,
debug: true
};
const electron = require("electron");
const {BrowserWindow, ipcMain} = electron;
electron.app.on("ready", () => {
ipcMain.on("app.quit", function (event) {
electron.app.quit();
});
let win = new BrowserWindow();
win.loadURL("http://www.baidu.com");
win.webContents.executeJavaScript(`
document.getElementById("lg").addEventListener("click", function(){
require("electron").ipcRenderer.send("app.quit");
});
`)
});
其实在electron api演示(demo)中就有一个类似的例子,不过那个例子中采用了注册协议的方式来使得打开的页面(在默认浏览器中的)通过协议访问调用打包的 api演示程序。electron api 演示中文翻译版
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
API里有window.open函数的,通过
BrowserWindowProxy.close()
关闭子窗口,你可以给按钮点击事件,来关闭窗口。