mailto链接
在我的jQuery Mobile的应用程序,我有一个mailto链接,是动态生成的href属性,它是通过jQuery.Here“点击”是链接代码:mailto链接
<a id="mealLink" href="mailto:[email protected]" style="display: none;">This is the mailto
link</a>
的点击处理程序连接到它是这样的:
$('#mailLink').bind('click', function() {
window.location.href = $(this).attr('href');
});
最后,函数创建与EMAILADDRESS,主题和邮件正文中的链接的href属性,然后单击通过jQuery模拟:
$emailAddress= ..
$subject= ....
$body=...
$emailString="mailto:"+$emailAddress+$subject+$body;
$emailLink= $("#mealMail");
$emailLink.attr("href",$emailString);
$emailLink.click();
现在,这个代码在正常使用: Mozilla的桌面 Safari浏览器的桌面 的Android
但不工作: 的Safari移动 Chrome桌面
有什么建议?
在寻找复杂的解决方案后,我偶然发现了一个更容易的解决方案。这里的问题是,如果直接点击mailto链接,它可以在所有浏览器中运行,但是如果通过jQuery .click()函数间接点击它,它不适用于所有浏览器。因此,这里是我的实现:
<a href='#mailtolink' id="emailLink">This is a mail to link</a>
$emailAddress= ..
$subject= ....
$body=...
$emailString="mailto:"+$emailAddress+$subject+$body;
$emailLink= $("#emailLink");
$emailLink.attr("href",$emailString);
现在,这取决于应用程序的情况下,该链接的href参数可以设置并点击该链接时,它的工作原理。我在下面的browers测试:
- Mozilla Firefox的桌面
- Safari浏览器桌面
- Chrome的桌面 iPad上
- 的Safari移动1
您不应该使用mailto:
检查是否更好创建一个简单的“联系我们”表单。 但仍然看看这个:i-cant-get-mailto-links-to-open-the-mail-app-from-mobile-safari-when-using-jqto
这个解决方案仍然在Chrome桌面和Safari浏览器不工作移动和另外打破Safari桌面。 – user1107888 2012-07-26 09:24:15
伤心到这里:(但你不能只创建一个简单的与我们联系形成的?只要用户接受好得多呢。邮件到最后一个,打开Outlook或相似的,但很多人不” T选用任何这现在天。 – 2012-08-03 16:34:58
记住,如果这对于公共网站是不好用的mailto。很多人不使用任何邮件客户端现在天。还有很好的解决方案。 – 2012-08-16 22:38:04
我有同样的问题在哪里我最初说'window.location = mailto;'。更新标签的href attr后,它的工作完美。 – 2015-09-16 20:58:25