当用户在页面上保存一些内容时,我需要自动打开他们的默认电子邮件客户端。我需要填充电子邮件主题,以进行处理,然后在电子邮件正文中放入一些内容。
实现这一目标的最佳选择是什么?
我知道该mailto:
属性,但是用户必须单击该属性,并且不确定它是否允许您指定主题和内容?
Answers:
如RFC 6068所述,mailto允许您指定subject和body以及cc字段。例如:
mailto:username@example.com?subject=Subject&body=message%20goes%20here
如果您强制使用JavaScript打开链接,则用户无需单击链接
window.location.href = "mailto:user@example.com?subject=Subject&body=message%20goes%20here";
请注意,浏览器/电子邮件客户端没有简单的标准方式来处理mailto链接(例如,主题和正文字段可能会被丢弃而不会发出警告)。此外,还有弹出窗口和广告拦截器,防病毒软件等可能会默默阻止强制打开mailto链接的风险。
jQuery的:
$(function () {
$('.SendEmail').click(function (event) {
var email = 'sample@gmail.com';
var subject = 'Test';
var emailBody = 'Hi Sample,';
var attach = 'path';
document.location = "mailto:"+email+"?subject="+subject+"&body="+emailBody+
"?attach="+attach;
});
});
HTML:
<button class="SendEmail">Send Email</button>
无需使用Jquery即可以这种方式实现:
<button class="emailReplyButton" onClick="sendEmail(message)">Reply</button>
sendEmail(message) {
var email = message.emailId;
var subject = message.subject;
var emailBody = 'Hi '+message.from;
document.location = "mailto:"+email+"?subject="+subject+"&body="+emailBody;
}
试试这个: 它将直接打开默认邮件。
<a href="mailto:demo@demo.com"><img src="ICON2.png"></a>