我有以下代码,我试图打开多个mailclient 它适用于Firefox但不适用于Chrome
<button class="button">Open Email</button>
$(document).ready(function(){
$('.button').on('click',function(){
window.location.href = "mailto:user@example.com?subject=Subject&body=message%20goes%20here";
window.location.href = "mailto:user@example.com?subject=Subject2&body=message%20goes%20here";
});
});
以下是fiddle to it
任何人都知道这背后的原因是什么,还是有其他技术可以做到这一点? 感谢
答案 0 :(得分:2)
Chrome每个用户操作只允许一个打开的窗口。如果打开新浏览器窗口是个问题,您可以告诉弹出窗口阻止程序允许它,但是在启动电子邮件窗口时这是不可能的。您可以要么需要两个用户操作(例如两个按钮),要么可以使基于Web的邮件表单执行相同的操作(如果您正在使用跟踪目的的邮件客户端,只需将其发送给您自己。
答案 1 :(得分:0)
如果要打开多个链接,则不应使用window.location.href
,它会在当前窗口中打开链接,并且您无法在一个窗口中打开多个链接。你应该使用window.open(your_url)
,但要注意,它会创建弹出窗口。
从浏览器的角度来看,mailto
是一个与其他链接类似的链接,因此将其连续两次分配给window.location.href
就像快速点击页面中的两个链接一样,浏览器只会处理其中一个链接
如果您使用基于浏览器的邮件客户端(如gmail),那么即使在FF中,您的问题中的代码也无法正常工作。
答案 2 :(得分:0)
您可以为用户提供2个链接手动打开电子邮件客户端,您也可以打开客户端,刷新页面(在第二个网址上显示某些内容)然后打开第二个链接?