[javascript] JQuery / JavaScript로 링크 할 메일 호출 / 클릭

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);

        });
    }
}


답변