electron 如何控制 BrowserWindow 的新开窗口尺寸?
发布于 作者:苏南大叔 来源:程序如此灵动~在前面的文章中,苏南大叔讲述了如何控制webview
的新开窗口问题,链接见末尾。今天讲述的是BrowserWindow
的新开窗口问题:webview
是不能打开_blank
页面,而BrowserWindow
打开_blank
或者window.open
页面是可以的,但是尺寸是固定的,无法控制size
。
- 殊途同归,
webview
和BrowserWindow
都是通过拦截new-window
事件来解决问题的。 - 本文的基础代码,还是以前文章提到过的改造版的
quick-start
。
代码片段
main
主进程:
newsn.net:这里是【评论】可见内容
苏南大叔自定义了一个win_event
函数,在这里拦截了new-window
事件。同时,使用event.preventDefault()
,来阻止默认行为(打开固定尺寸的窗口)。然后新建了一个BrowserWindow
,利用它来控制新开窗口的尺寸,同时再次调用该函数,使得新开窗口中的新开窗口,也能够在控制拦截范围内。
相关链接
webview
的类似问题,请见这里:
小结
在苏南大叔这边理解着,对比普通的网页,browserwindow
就是我们平时看到的正常网页窗口,而webview
则相当于iframe
。当然了,electron
中,把好多网页概念都进行了重写。
更多苏南大叔带来的electron
的精彩文章,请点击这里查看:


本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
《程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
《程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。
本站的忠实读者小伙伴,正在阅读下面这些文章:
帮助很大