前端学习之路Electron——实现iframe

在你的入口文件下我的是main.js

    let BrowserView = electron.BrowserView
    let view = new BrowserView();
    mainWindow.setBrowserView(view);
    view.setBounds({x:0,y:120,width:1920,height:960})
    view.webContents.loadURL('https://www.baidu.com/');

main.js部分:

var electron = require('electron') 

var app = electron.app   

var BrowserWindow = electron.BrowserWindow;

var mainWindow = null ;
app.on('ready',()=>{
    mainWindow = new BrowserWindow({
        width:1920,
        height:960,
        webPreferences:{ nodeIntegration:true}
    })
    require('./main/menu')
    mainWindow.webContents.openDevTools()
    mainWindow.loadFile('demo.html')

    let BrowserView = electron.BrowserView
    let view = new BrowserView();
    mainWindow.setBrowserView(view);
    view.setBounds({x:0,y:120,width:1920,height:960})
    view.webContents.loadURL('https://www.baidu.com/');

    mainWindow.on('closed',()=>{
        mainWindow = null
    })

})

注意

这种方式会导致你内嵌的网页会受到下面这段代码的宽高影响

 mainWindow = new BrowserWindow({
        width:1920,
        height:960,
        webPreferences:{ nodeIntegration:true}
    })

window.open方法实现(子级窗口)

    <div id="myweb">
        open myweb
    </div>

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>
    <script src="./render/openweb.js"></script>
</body>
</html>

JS:

const myweb = document.querySelector('#myweb');
myweb.onclick = function(e){
    window.open('https://www.baidu.com/')
}
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('https://www.baidu.com/')
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Electron 是一个跨平台的桌面应用程序开发框架,可以使用 HTML、CSS 和 JavaScript 来开发桌面应用程序。要实现远程更新,可以按照以下步骤进行操作: 1. 建立一个用于存放更新的服务器。可以使用云服务提供商提供的服务器来托管应用程序的更新文件。服务器端应该有一个存放最新应用程序版本的地方,并能提供对更新文件的访问。 2. 在应用程序中添加自动更新的功能。通过 Electron 提供的自动更新模块,可以方便地检查并下载最新的应用程序版本。可以在应用程序启动时调用自动更新模块的函数,它会自动检查服务器中的最新版本,并开始下载更新文件。 3. 将更新文件上传到服务器。更新文件可以是应用程序的压缩包或差分包,包含了最新的应用程序文件。可以使用 FTP 或其他文件传输协议将更新文件上传到服务器上。 4. 更新应用程序。在下载完更新文件后,应用程序可以在后台自动解压并将最新的文件替换掉旧的文件。通过 Electron 提供的自动更新模块,可以方便地实现这一过程。 总结起来,要实现 Electron 应用程序的远程更新,需要建立一个存放更新文件的服务器,并在应用程序中添加自动更新功能。通过下载最新的应用程序文件并在后台替换旧的文件,能够实现应用程序的更新。这样,当用户启动应用程序时,就能自动检查服务器上是否有新的版本,并下载并安装更新。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值