javascript - 如何修改 javascript 调用的 mailto 链接以在 Chrome 中工作
问题描述
我有这个 JavaScript 代码(在 PHP 页面内),它打开一个新窗口来调用 mailto 链接,然后关闭新窗口 - 这样做是为了允许原始窗口继续它的进程并在用户邮件客户端中打开一封电子邮件。
<script language="javascript">
var win;
win = window.open("<?php echo $link; ?>" , "Email Window", "width=100,height=100");
win.close();
</script>
此代码适用于 Edge 和 Firefox,但不适用于 Chrome。我已经用谷歌搜索过 - 大多数人都在谈论处理程序,我已经检查过(Chrome 处理程序),唯一的选择是“允许网站要求成为协议的默认处理程序(推荐)”。
启用或禁用并不能解决问题。我已经在多台 PC 上对此进行了测试。
解决方案
mailto:
在浏览器窗口中打开链接是没有意义的。相反,创建一个a
元素,设置它href
,然后以编程方式单击它
let link = document.createElement('a')
// link.href = '<?= $link ?>'
link.href = 'mailto:johndoe@example.com'
link.click()
推荐阅读
- java - Java Swing 嵌套 JTable
- c#-4.0 - 转发或回复邮件时获取父邮件项以读取标题
- amazon-web-services - systemctl daemon-reload 失败,参数数量无效
- reactjs - 此路由不支持 POST 方法。支持的方法:GET、HEAD。在 laravel api资源中
- python-3.x - 在某个时间点计算数据框中的灾难
- r - R:用相应但已更改的变量名称替换 for 循环中的 NA
- r - qnorm 的数值问题
- php - Laravel 旧输入 8.x
- python - python 格式的 flake8 (E902) TokenError
- javascript - 如何影响不属于
?