Electron link brower - yaokun123/php-wiki GitHub Wiki

Electron中通过链接打开浏览器

一、示例

渲染进程中默认加入一个标签,进行跳转默认是直接在窗口中打开,而不是在浏览器中打开的,如果我们想在默认浏览器中打开,要如何操作那?

我们先来看一下,在electron 中默认打开一个链接是什么样的,在项目根目录,新建一个demo2.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>
<h1>
    <a href="https://www.baidu.com">技术胖的博客</a>
</h1>
</body>
</html>

这时候我们运行程序,点击链接以后,可以看到是在窗口中直接打开的,而不是在浏览器中打开。我们现在要作的就是在浏览器中打开。

二、使用Shell在浏览器中打开

如果想使用浏览器打开,我们可以直接在标签中加入id,代码如下:

<a id="aHref" href="https://www.baidu.com">技术胖的博客</a>

然后在render文件夹下,新建一个demo3.js文件,先在文件首页中引入shell,然后编写响应事件click。

var { shell } = require('electron')

var aHref = document.querySelector('#aHref') 

aHref.onclick = function(e){
    e.preventDefault()
    var href = this.getAttribute('href')
    shell.openExternal(href)
}

编写完成,要记得在html中引入demo3.js文件。

<script src="./renderer/demo3.js"></script>
⚠️ **GitHub.com Fallback** ⚠️