1

我正在 iframe 内创建一个带有 mailto 链接的网页。单击此链接时出现错误。当我将 mailto 链接放在 iframe 之外时,不会发生错误。它可能与 gmail 作为我的默认邮件处理程序有关,但我希望该链接适用于 gmail 用户,当然也适用于其他电子邮件客户端的用户。我怎样才能解决这个问题?

这是进入 iframe 的 .html 文件中的相关内容:

<a target="_parent" href="mailto:xxx@xxx.xxx">Contact XXX</a>

这是错误消息。

X-Frame-Options 拒绝加载: https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/?extsrc%3Dmailto%26url%3Dmailto: xxx@xxx.xxx&scc=1<mpl=default<mplcache=2 不允许成帧。

如果它是相关的,我正在 Firefox 上进行测试,但我当然想要一个跨浏览器的解决方案。

4

4 回答 4

2
  1. 更改为 target="_blank" 以打开新标签;
    <a target="_blank" href="mailto:xxx@xxx.xxx">Contact XXX</a>
  1. 允许 gmail 处理“mailto”:
    • 使用 chrome 访问 gmail.com;
    • 查看地址栏右侧的协议处理程序图标;
    • 点击上方图标,选择“允许”选项;
于 2019-09-03T06:12:54.540 回答
1

做了一个快速测试页面:

<html>
<body>
<iframe src="test2.html"></iframe>
</body>
</html>

这是 test2.html 的内容:

<a href="mailto:test@test.com" target="_parent">test email</a>

并且将 Gmail 设置为默认处理程序时效果很好。不知道你的问题是什么...

编辑:您是否可能使用扩展程序在 Gmail 中打开 mailto 链接,而不是将其设置为默认处理程序?

于 2013-04-22T18:41:30.017 回答
1

我在 iframe 也有同样的问题。您只需添加以下代码 onclick 元素的 onclick 事件即可打开 mailto 窗口

window.top.location='mailto:xxx@xxx.xxx';

这将在 iframe 中打开您的 mailto 窗口

于 2019-05-16T07:29:37.927 回答
0

尝试设置target="_top"

于 2021-01-14T08:54:46.863 回答