Frage

Ich möchte eine aufrufen mailto Link von JavaScript - das ist ich würde eine Methode, wie die mir die E-Mail-Client auf dem Benutzer-PC öffnen können, genau, als ob sie auf einem normalen mailto Link geklickt hat.

Wie kann ich das tun?

War es hilfreich?

Lösung

Sie können window.location.href verwenden hier, wie folgt aus:

window.location.href = "mailto:address@dmail.com";

Andere Tipps

Sie können das leere Seite Problem oben anstatt mit .click () mit einem Link auf der Seite besprochen vermeiden

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

die Arbeits Antwort für mich, getestet in Chrom, IE und Firefox zusammen mit Ausblick war

window.location.href = 'mailto:address@dmail.com?subject=Hello there&body=This is the body';

%0d%0a ist das neue Linie Symbol des E-Mail-Körpers in einem Mail-Link

%20 ist der Raum, Symbol, das verwendet werden soll, aber es funktionierte für mich als auch mit normalen Raum

Eigentlich gibt es eine possibillity die leere Seite zu vermeiden.

Ich fand heraus, können Sie einfach einen Iframe mit dem Mailto-Link in den dom einzufügen. Dies funktioniert auf aktuelle Firefox / Chrome und IE (auch IE wird einen kurzen Bestätigungsdialog angezeigt werden).

Mit jQuery, ich habe diese:

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

        });
    }
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top