Domanda

Vorrei richiamare un link da JavaScript mailto - che è Vorrei un metodo che mi permette di aprire il client di e-mail sul PC degli utenti, esattamente come se avessero cliccato su un normale collegamento mailto.

Come posso fare questo?

È stato utile?

Soluzione

È possibile utilizzare window.location.href qui, in questo modo:

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

Altri suggerimenti

È possibile evitare il problema pagina vuota discusso in precedenza da utilizzare al posto .Click () con un link sulla pagina:

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

la risposta a lavorare per me, testato in cromo, IE e Firefox insieme con outlook è stato questo

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

%0d%0a è il nuovo simbolo linea del corpo di posta elettronica in un collegamento mailto

%20 è il simbolo dello spazio che dovrebbe essere utilizzato, ma ha funzionato anche per me con lo spazio normale

In realtà, c'è un possibillity per evitare la pagina vuota.

ho scoperto, si può semplicemente inserire un iframe con il link mailto nel DOM. Questo funziona su corrente Firefox / Chrome e IE (anche IE verrà visualizzata una finestra di conferma a breve).

Utilizzando jQuery, ho ottenuto questo:

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

        });
    }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top