JavaScript에서 mailto 링크 를 호출 하고 싶습니다. 즉, 일반 mailto 링크를 클릭 한 것처럼 사용자 PC에서 이메일 클라이언트를 열 수있는 방법을 원합니다.
어떻게 할 수 있습니까?
답변
window.location.href
여기에서 다음과 같이 사용할 수 있습니다 .
window.location.href = "mailto:address@dmail.com";
답변
페이지의 링크와 함께 .click ()을 대신 사용하여 위에서 설명한 빈 페이지 문제를 피할 수 있습니다.
document.getElementById('mymailto').click();
...
<a href="mailto:...." id="mymailto" style="display:none"></a>
답변
Outlook과 함께 크롬, IE 및 파이어 폭스에서 테스트 한 나를 위해 작동하는 대답은 다음과 같습니다.
window.location.href = 'mailto:address@dmail.com?subject=Hello there&body=This is the body';
%0d%0a
mailto 링크에서 이메일 본문의 새 줄 기호입니다.
%20
사용해야하는 공간 기호이지만 일반 공간에서도 잘 작동했습니다.
답변
사실, 빈 페이지를 피할 가능성이 있습니다.
나는 단순히 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);
});
}
}