问题
I have a button that triggers the following javascript function:
function sendEmail() {
var mail = 'mailto:contact@test.com';
location.href = mail;
};
In Chrome, this function triggers an HTTP GET to 'mailto:contact@test.com', but the HTTP GET has a 'canceled' status in the Inspect Element Network tab, and the email client is not opened.
In IE, the email client also does not get opened.
How can I get the email client to open?
回答1:
It works for me. But you can try this
function sendEmail() {
var mail = 'mailto:contact@test.com';
var a = document.createElement('a');
a.href = mail;
document.body.appendChild(a); // Add to the DOM
a.click();
document.body.removeChild(a); // Remove it back
};
来源:https://stackoverflow.com/questions/14937272/javascript-location-href-to-mailto-triggers-a-get-http-that-gets-canceled-in-chr