electron 如何阻止mailto打开电子邮件客户端从内部iframe在电子webapp?

kupeojn6  于 2023-09-28  发布在  Electron
关注(0)|答案(1)|浏览(167)

我有一个全屏的,kiosk Electron网络应用程序,里面有一个iframe的在线网站。我可以使用iframesandbox属性来阻止从链接打开新窗口和弹出窗口,但mailto:链接打开系统默认邮件客户端,并使用户离开Electron应用程序。有没有什么方法可以阻止/拦截这些链接?我无法查看相框里的内容。我已经尝试了窗口的will-navigate事件,但在框架内单击时不会触发。

oknwwptz

oknwwptz1#

事实证明,有一个事件与will-navigate做同样的事情,但处理页面子框架内的链接,例如iframes:will-frame-navigate .这解决了我的问题:

win.webContents.on( 'will-frame-navigate', ( event, url ) => {
    if ( url.startsWith( 'mailto:' ) )
    {
        event.preventDefault();
    }
});

相关问题