我想从JavaScript调用mailto链接-也就是说,我希望有一种方法可以让我在用户PC上打开电子邮件客户端,就像他们单击普通的mailto链接一样。
我怎样才能做到这一点?
Answers:
您可以window.location.href
在这里使用,如下所示:
window.location.href = "mailto:address@dmail.com";
window.location.href = 'mailto:address@dmail.com&subject=Hello there&body=This is the body';
。不?
,不是&
,只是&
您可以通过在页面上使用带有链接的.click()来避免上面讨论的空白页问题:
document.getElementById('mymailto').click();
...
<a href="mailto:...." id="mymailto" style="display:none"></a>
实际上,有可能避免空白页。
我发现,您只需将带有mailto链接的iframe插入dom。这适用于当前的Firefox / Chrome和IE(IE也会显示一个简短的确认对话框)。
使用jQuery,我得到了:
var initMailtoButton = function()
{
var iframe = $('<iframe id="mailtoFrame" src="mailto:name@domain.com" width="1" height="1" border="0" frameborder="0"></iframe>');
var button = $('#mailtoMessageSend');
if (button.length > 0) {
button.click(function(){
// create the iframe
$('body').append(iframe);
//remove the iframe, we don't need it any more
window.setTimeout(function(){
iframe.remove();
}, 500);
});
}
}