首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当父窗口中的nativeWindowOpen为true时,electron.js中webview中基于target=_blank的链接无法打开

在electron.js中,当父窗口中的nativeWindowOpen属性设置为true时,webview中基于target=_blank的链接无法打开的原因是由于安全策略的限制。这个属性控制着是否允许webview中的链接在新窗口中打开。

当nativeWindowOpen属性设置为true时,electron.js会阻止webview中的链接在新窗口中打开,以防止恶意网站打开弹窗或执行其他不安全的操作。这是为了保护用户的安全和隐私。

然而,如果你希望在webview中打开基于target=_blank的链接,你可以通过以下方式解决:

  1. 使用webview的new-window事件:你可以监听webview的new-window事件,在事件回调函数中手动打开链接。示例代码如下:
代码语言:txt
复制
webview.addEventListener('new-window', (event) => {
  const { url } = event;
  // 在新窗口中打开链接
  require('electron').shell.openExternal(url);
});
  1. 使用webPreferencesnativeWindowOpen属性:你可以在创建webview时,通过webPreferencesnativeWindowOpen属性将其设置为false,以允许基于target=_blank的链接在新窗口中打开。示例代码如下:
代码语言:txt
复制
const { BrowserWindow } = require('electron');

const win = new BrowserWindow({
  webPreferences: {
    nativeWindowOpen: false
  }
});

需要注意的是,以上解决方案仅适用于electron.js中的webview组件。如果你在其他环境或框架中使用electron.js,可能需要根据具体情况进行调整。

关于electron.js的更多信息和使用方法,你可以参考腾讯云的Electron.js产品介绍页面:Electron.js产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

在新窗口中打开页面?小心有坑!

背景 产品需求来啦:点击页面上某个东西,要在新窗口中打开一个页面,注意!要在新窗口中打开。你呵呵一笑,太简单了: 打开页面地址是固定?直接a标签加上target="_blank"属性搞定。...点击第一个链接,也就是‘target _blank’字样那个。 新页面显示'HACK成功,再看看上个TAB?'。然后你忍不住看回上一个页面。 看到第一行鲜红提示:'你被HACK了啊!...url)在新窗口中打开页面,会存在潜在安全问题。...确实,chrome有不同标签页面使用不同进程和线程,但是有个例外,通过a标签target="_blank"属性,或者window.open(url)在新窗口中打开页面, 会与窗口共用进程和线程。...特点: 可解决safari下安全问题,无法解决性能问题 4.4 推荐方案 如果是a标签要在新窗口中打开,添加noopener属性 如果是js打开新窗口,手动将新窗口opener置null

3.9K10

在新窗口中打开页面?小心有坑!

背景 产品需求来啦:点击页面上某个东西,要在新窗口中打开一个页面,注意!要在新窗口中打开。你呵呵一笑,太简单了: 打开页面地址是固定?直接a标签加上target="_blank"属性搞定。...点击第一个链接,也就是‘target _blank’字样那个。 新页面显示'HACK成功,再看看上个TAB?'。然后你忍不住看回上一个页面。 看到第一行鲜红提示:'你被HACK了啊!...url)在新窗口中打开页面,会存在潜在安全问题。...确实,chrome有不同标签页面使用不同进程和线程,但是有个例外,通过a标签target="_blank"属性,或者window.open(url)在新窗口中打开页面, 会与窗口共用进程和线程。...特点: 可解决safari下安全问题,无法解决性能问题 4.4 推荐方案 如果是a标签要在新窗口中打开,添加noopener属性 如果是js打开新窗口,手动将新窗口opener置null

5.2K21

新窗口创建问题 | Electron 安全

标签, a标签 target 属性被设置 _blank ,点击标签会创建新窗口 form 标签渲染表达被提交,也会打开新窗口 除此之外 alert 等创建弹窗就不在讨论范畴了 https...如果该名称无法识别现有的上下文,则会创建一个新上下文,并赋予指定名称。 窗口名字主要用于链接和表单设置目标(targets)。窗口不需要有名称。...权限继承关系 如果在口中禁用了 Node integration, 则在打开 window中将始终被禁用。 如果在口中启用了上下文隔离, 则在打开 window 中将始终被启用。...打开 about:blank ,子窗口 WebPreferences 将从父窗口复制,并且没有办法覆盖它,因为Chromium在这种情况下跳过浏览器侧导航。 6....不设置 'nodeIntegration=true, contextIsolation=false' 也是可以执行,毕竟是继承窗口权限嘛 由于这部分是新窗口创建,而 frameName(target

12010

Android开发(29) 在WebView中点击超链启动QQ

概述 在Web开发,我们可以通过一个URL链接,点击后启动QQ,这是很好用户跳转体验,很方便。...使用链接如下: <a target="_blank" href="http://wpa.qq.com/msgrd?...在android 平台一些 浏览器(比如 UC) 里也可以正常被调用。 而我们Android里我们会使用Webview展示一些web页面,如果页面里包含了上面的连接,却无法启动qq。该如何做?...(url); return true; } }); 这段代码意思是,如果Webview超链被点击,触发了url,就使用Webview去加载,而替代默认浏览器加载...那么,我们需要捕获,查看这些url,遇到普通网页交给webview处理,遇到 mqqwpa开头,交给默认浏览器处理。

1.1K00

安全开发小知识记录

[TOC] 0x00 前言 小小知识大作用 0x01 F&Q 1.前端Web Q:a标签target="_blank"安全问题及解决办法 答:A标签target属性规定在何处如何打开链接文档常用有..._self & _blank,如果在一个 A 标签内包含一个 target 属性,浏览器将会载入和显示用这个标签 href 属性命名、名称与这个目标吻合框架或者窗口中文档,如果这个指定名称或 id...框架或者窗口不存在,浏览器将打开一个新窗口,给这个窗口一个指定标记,然后超链接文档就可以指向这个新窗口。...您可以把target=”_blank”理解浏览器窗口打开此超链接; 关键点: 如果您使用了该属性却没有添加rel=”noopener noreferrer”得话就会存在一定得安全风险; 原理解析...,又假如此时b.html有如下js代码 if (window.opener) { window.opener.location.href = 'eval.html'; } 页面b.html被打开同时原来打开

67110

安全开发小知识记录

[TOC] 0x00 前言 小小知识大作用 0x01 F&Q 1.前端Web Q:a标签target="_blank"安全问题及解决办法 答:A标签target属性规定在何处如何打开链接文档常用有..._self & _blank,如果在一个 A 标签内包含一个 target 属性,浏览器将会载入和显示用这个标签 href 属性命名、名称与这个目标吻合框架或者窗口中文档,如果这个指定名称或 id...框架或者窗口不存在,浏览器将打开一个新窗口,给这个窗口一个指定标记,然后超链接文档就可以指向这个新窗口。...您可以把target=”_blank”理解浏览器窗口打开此超链接; 关键点: 如果您使用了该属性却没有添加rel=”noopener noreferrer”得话就会存在一定得安全风险; 原理解析...,又假如此时b.html有如下js代码 if (window.opener) { window.opener.location.href = 'eval.html'; } 页面b.html被打开同时原来打开

45310

利用 target=_blank 进行前端钓鱼

为什么大部分国外网站内链接不用 target="_blank"新窗口打开? Google 都是当前窗口打开;Baidu/Bing 都是新窗口打开。 用户将无法控制它在本页打开还是新窗口打开。...稀里糊涂把账号密码输进去了~ parent 与 opener 中提供了一个用于父子页面交互对象 window.parent,我们可以通过该对象来从框架页面访问级页面的 window...对象;而域名不同时,parent 和 opener 则是经过包装一个 global 对象。...如果,你网站上有一个链接,使用了 target="_blank",那么一旦用户点击这个链接并进入一个新标签,新标签页面如果存在恶意代码,就可以将你网站直接导航到一个虚假网站。...="_blank"打开新窗口,跟原来页面窗口共用一个进程。

1.1K20

Meta标签详解

META通常用处是指定搜索引擎用来提高搜索质量关键词。数个META元素提供文档语言从属信息,搜索引擎会使用lang特性来过滤并通过用户语言优先参照来显示搜索结果。...)    说明:插入网页基链接属性    用法:    注意:你网页上所有相对路径在链接都将在前面加上...其中target=”_blank”是链接文件在新口中打开,你可以做其他设置。...将“_blank”改为“_parent”是链接文件将在当前窗口级窗口中打开;改为“_self”链接文件在当前窗口(帧)打开;改为“_top”链接文件全屏显示。   ...根据现在流行搜索引擎(Google,Lycos,AltaVista等)工作原理,搜索引擎先派机器人自动在WWW上搜索,发现新网站,便于检索页面Keywords和Description,并将其加入到自己数据库

62020

Android webview加载https链接错误或无响应解决

target api21以上: 系统默认禁止了mixed content和第三方cookie。...下面是列出几个问题 在webview跳转别的页面无响应 在webview中下载文件无响应 部分网址链接无法显示 部分网址打开自动跳转到浏览器 1.在webview跳转别的页面无响应 修改之前代码如下...所以我把这句去掉了,在返回返回了true(true表示在当前webview打开网页,false则更倾向于浏览器打开网页)。这样做,发现部分网页仍然打不开。...4.部分网址打开自动跳转到浏览器 接到上面所讲,打开部分网址跳转到浏览器了,如何不让他跳转呢,返回true可以禁止跳转,但部分网址在webview无法打开,接下来,不给它直接返回true或false了...,而是返回super,让它类处理,结果也并没有调到浏览器并且网页也打开了,现在暂时就这样结尾了做到了大部分网址兼容。

4.2K10

CEF 拦截打开链接事件

使用 CEF 加载指定页面后,如果你希望控制页面在打开链接根据自己预定义一些行为来操作,比如在自己 UI 框架中新建一个 Tab 页又或者阻止打开页面等。...OnBeforePopup 当你在页面编写了一个 target 属性 _blank 链接标签,界面中点击这个超链接就会跳转到这个接口中,该接口声明如下: virtual bool OnBeforePopup...target_url 和 target_frame_name 代表了目标要打开地址和 frame 名称 target_disposition 描述了是从当前页还是从新标签打开链接 user_gesture...render 进程 该函数返回 false 时候,则允许弹出窗口, true 时候就拦截掉不允许弹出了。...该接口一些参数就不多介绍了,我们关注返回值就好了,返回值 false 时候,页面继续加载。返回值 true 时候,不好意思页面就停止加载了。

2.9K30

标签 rel 属性详解

SEO 作用 调整网页链接权重,集中站点权重 添加 nofollow 后,爬虫不会追踪有此标记链接。并且,不会传递当前站点权重到新链接,避免被分散。...nofollow 让搜索引擎不要跟踪标记了该属性链接,使其不传递权重。 external rel="external" 和 target="_blank" 作用一样,都是在新窗口中打开当前链接。...如果网点采用严格 DOCTYPE 声明,则 target="_blank" 会失效。而 rel="external" 仍可以正常工作。 SEO 作用 告知搜索引擎,当前链接是外部链接。...链接使用 target="_blank" 打开新页面,新页面可以使用以下语句控制页面: if (window.opener) { window.opener.location="https...同时,新页面无法获取 document.referrer 信息,该信息包含了来源页面的地址。

2.1K30

Android:网络编程及Internet应用

来实现 (2)发送POST请求 GET方式只适合大小在1024字节以内数据,要发送数据较大,就需要使用POST方式来发送 HttpURLConnection urlConn =(HttpURLConnection...HttpURLConnection类输入/输出流操作,在HttpClient同一封装成HttpGet、HttpPost、HttpResponse。...goForward()     前进,相当于浏览器前进按钮 stopLoading() reload() 2.使用WebView加载HTML代码 进行游戏开发,使用HTML代码进行显示比较实用。...如果null,则使用about:blank,即空白页 data:用于要显示字符串数据 mimeType:指定要显示MIME类型,如果null,则使用默认text/html encoding:用于指定数据编码方式...如果null,则使用about:blank,即空白页 示例:        WebView wv = (WebView)findViewById(R.id.webView1);        StringBuilder

99650

HTML常用标签介绍

采取 键值对 格式 key="value" 格式 图像标签 src 属性必须写 alt 属性表示图片未能正常显示文本,title 表示图片描述 链接标签 注意: 内部链接 直接链接内部页面名称即可 比如  首页 如果当时没有确定链接目标,通常将链接标签 href ...不仅可以创建文本超链接,在网页各种网页元素,如图像、表格、音频、视频等都可以添加超链接。 关于a标签 target 属性内容 _blank在新窗口中打开链接文档。..._self在被点击同一框架打开链接文档(默认)。_parent在框架打开链接文档。_top在窗口主体打开链接文档。...注释标签 注释内容不会显示在浏览器窗口中,但是作为 HTML 文档内容一部分,也会被下载到用户计算机上,查看源代码就可以看到。 快捷键是: Ctrl+ / <!

1K30

我们一起学一学渗透测试——黑客应该掌握HTML基础知识(二)

可执行文件:文件扩展名不是html、asp等,会将链接文件下载到本地计算机或直接执行。如果是文本文件(如word格式),则在浏览器打开文件并进行编辑。...target=_blank:在新浏览器窗口中打开连接文档,同时保持当前窗口不变 target=_self:将链接文档载入链接所在同一框架或窗口,默认设置_self target=_parent...:将链接文档载入该链接所在框架框架或窗口。...target=_top:将链接文档载入整个浏览器窗口,从而删除所有框架 我们以“_blank例,可以按照如下方式编写: 百度地址 属性title 浏览器会以浮动提示方式显示解释信息

95010

6.超链接-HTML基础

我们可以将文本设置链接,即文本超链接;也可以将图片设置链接,即图片超链接。 (2)示例 ① 例1-文本超链接 <!...图片超链接.png 2.target属性 默认情况下,超链接都是在当前浏览器窗口打开新页面。 在HTML,我们可以通过target属性来定义超链接在窗口中打开方式。...(1)语法格式 文本或图片 (2)target4种属性值 属性值 说明 _self 默认值,在原来窗口打开链接。..._blank 在新窗口打开链接。 _parent 在窗口打开链接。 _top 在顶层窗口打开链接。 ① 实际开发 一般情况下,只会用到_blank这一个值,其它三个值不需深究。...超链接target属性_blank.png 二、内部链接 1.外部链接和内部链接 在HTML,超链接有两种: 外部链接 内部链接 (1)外部链接 指向是外部网站页面。

2.3K32

Web前端开发HTML笔记

属性名称 属性说明 bgcolor 指定HTML文档背景色 text 指定HTML文档中文字颜色 link 指定HTML文档,待链接链接对象颜色 alink 指定HTML文档,链接链接对象颜色...链接文字 百度...: (1) _blank在一个新口中打开链接 (2) _seif(默认值)在当前窗口中打开链接 (3) _parent在口中打开页面(框架中使用较多) (4) _top在顶层窗口中打开文件...,建议其属性与ID属性保持一致方便管理 enctype 设置表单资料编码方式,用于input标签type="file"使用 target 指定使用哪种方式打开目标URL,属性有:_blank...post和get两种方式 get方式: get方式提交,会将表单内容附加在URL地址后面,且不具备保密性 post方式: post方式提交,将表单数据一并包含在表单主体,一起传送到服务器处理

2.2K20

Chrome下打开新窗口

一般点击打开新窗口,有几种方式: 1、超链接a  有href属性、target_blank 2、iframe,其target_blank 3、window.open 4、form表单提交,同样target也必须设为_blank 现在遇到一个需求: 做了一个后台运维管理系统,在点击datagrid头部一个按钮,需要打开一个新窗口...因为extjs运行效率比较低,所以选择使用chrome访问系统,而在操作些按钮时候发现很多很奇特现象,这些现象只出现在chrome: 1、打开一个窗口后,些窗口不关闭,将无法打开多个窗口,即使原有窗口关闭...,就是弹出窗口是没有工具栏和地址栏,且不在新选项卡打开 后来搜索到一篇文章,有所启发,就有了如下代码: var nwin = window.open(); nwin.location = ‘xxxx...’;//需要打开地址 如果使用ajax请求地址后面的参数的话,需要将ajax改为同步,不然弹出窗口会在新窗口中打开,而且没有工具栏和地址栏

3.5K30
领券