javascript
2014-01-30 69 views 13 likes 
13

我目前有一个设置了5个无线选项的表单。我有一个switch语句取决于您选择的选项并确定电子邮件的去向。使用窗口打开的Javascript mailto

在我的交换机里面,我有这段代码。

window.open("mailto:"+emailTo+'?cc='+emailCC+'&subject='+emailSub+'&body='+emailBody); 

这一切工作正常,当它打开了我的电子邮件客户端的所有内容然而,它也是浏览器中打开一个空白页。

是否有另一种方法来实现这一点,或防止从打开空白窗口,但仍然使它,如果你点击了href:mailto?

+0

我认为这是一个浏览器设置,因此您无法控制这是如何工作的。 – Liam

+0

您可以使用'window.location.href =“mailto:[email protected]”;'但这只有在浏览器设置中没有设置Gmail开放时才有效。 – antyrat

+0

您可以关闭该窗口,不能您? – Ale

回答

14

相反的:

window.open("mailto:"+emailTo+'?cc='+emailCC+'&subject='+emailSub+'&body='+emailBody); 

你可以试试:

location.href = "mailto:"+emailTo+'?cc='+emailCC+'&subject='+emailSub+'&body='+emailBody; 
4

Location.href似乎并没有在Chrome工作。 我不喜欢这样写道:

x=window.open("mailstring"); 
x.close(); 

工作非常适合我。

+0

如果你的意思是把它作为一个变量或占位符,你不应该把邮件串放入apostrophs – Gerfried

4

window.open中的第二个参数是目标。

window.open("mailto:"+emailTo+'?cc='+emailCC+'&subject='+emailSub+'&body='+emailBody, '_self');应该做的伎俩。

-1

在您的“window.open”语句后,尝试运行“if语句”来检查并查看是否打开了一个新窗口,以便它关闭。

if (win && win.open && !win.closed) 
    { 
    win.close(); 
    } 

这将很快发生,因此用户可能会注意到一个窗口中打开和电子邮件应用程序打开前关闭。

相关问题