Вызовите / щелкните ссылку mailto с помощью JQuery / JavaScript



Я хотел бы вызвать mailto ссылка из JavaScript-то есть я хотел бы метод, который позволяет мне открыть почтовый клиент на ПК пользователей, точно так же, как если бы они нажали на обычную ссылку mailto.



Как я могу это сделать?

570   4  

4 ответов:

можно использовать window.location.href вот такой:

window.location.href = "mailto:[email protected]";

вы можете избежать проблемы с пустой страницей, обсужденной выше, вместо этого используя .нажмите () со ссылкой на странице:

document.getElementById('mymailto').click();
...
<a href="mailto:...." id="mymailto" style="display:none"></a>

рабочий ответ для меня, протестированный в chrome, IE и firefox вместе с outlook, был таким

window.location.href = 'mailto:[email protected]?subject=Hello there&body=This is the body';

%0d%0a - это новый символ строки тела электронной почты в ссылке mailto

%20 это символ пробела, который должен использоваться, но он работал и для меня с нормальным пространством

на самом деле, есть возможность избежать пустой страницы.

я узнал, что вы можете просто вставить iframe со ссылкой mailto в dom. Это работает на текущем Firefox / Chrome и IE (также IE будет отображать короткий диалог подтверждения).

используя jQuery, я получил это:

var initMailtoButton = function()
{
    var iframe = $('<iframe id="mailtoFrame" src="mailto:[email protected]" 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);

        });
    }
}

Comments

    Ничего не найдено.