Frage

    

Diese Frage bereits eine Antwort hier:

    
            
  •              Mailto-Link mit HTML Körper                                      11 Antworten                          
  •     
    

Ich habe nicht zu verwirren habe mit Mailto-Links viel. Allerdings muss ich jetzt einen Link in den Körper eines mailto hinzufügen, wenn es möglich ist.

Gibt es eine Möglichkeit, einen Link hinzuzufügen, oder die E-Mail zu einem HTML-E-Mail-vs einem Text E-Mail geöffnet zu ändern?

So etwas wie:

<a href="mailto:test@test.test?body=The message's first paragraph.%0A%0aSecond paragraph.%0A%0AThird Paragraph.%0A%0ALink goes here">Link text goes here</a>
War es hilfreich?

Lösung

Abschnitt 2 von RFC 2368 sagt, dass das body Feld soll in text/plain Format sein, so dass Sie nicht HTML tun können.

Doch auch wenn Sie Klartext verwenden, es ist möglich, dass einige moderne Mail-Clients trotzdem eine URL als klickbaren Link machen würde, wenn.

Andere Tipps

Fügen Sie den vollständigen Link, mit:

 "http://"

an den Anfang einer Zeile und die meisten anständige E-Mail-Clients automatisch verknüpft es entweder vor dem Senden, oder am anderen Ende beim Empfang.

Für wirklich lange Urls, die wahrscheinlich wegen der vielen Parameter wickeln, wickeln Sie den Link in eine kleiner / größer als Symbol. Dies teilt den E-Mail-Client nicht die URL wickeln.

z.

  <http://www.example.com/foo.php?this=a&really=long&url=with&lots=and&lots=and&lots=of&prameters=on_it>

Es ist nicht möglich, soweit ich das beurteilen kann, da ein Link HTML benötigt, und Mailto-Links erstellen keine HTML-E-Mail.

Dies ist wahrscheinlich für die Sicherheit, wie Sie Javascript oder iFrames zu diesem Link und der E-Mail-Client der Endbenutzer auf Schwachstellen eröffnen könnte hinzufügen könnten.

Bitte überprüfen Sie unter Javascript im Internet Explorer. Weiß nicht, ob andere moderne Browser oder nicht funktionieren.

<html>
    <head>
        <script type="text/javascript">
            function OpenOutlookDoc(){
                try {

                    var outlookApp = new ActiveXObject("Outlook.Application");
                    var nameSpace = outlookApp.getNameSpace("MAPI");
                    mailFolder = nameSpace.getDefaultFolder(6);
                    mailItem = mailFolder.Items.add('IPM.Note.FormA');
                    mailItem.Subject="a subject test";
                    mailItem.To = "an@email.here";
                    mailItem.HTMLBody = "<b>bold</b>";
                    mailItem.display (0); 
                }
                catch(e){
                    alert(e);
                    // act on any error that you get
                }
            }
        </script>
    </head>
    <body>
        <a href="javascript:OpenOutlookDoc()">Click</a>
    </body>
</html>

Hier ist, was ich zusammen. Es arbeitet nach dem ausgewählten mobilen Gerät ich es brauchte für, aber ich bin nicht sicher, wie universal die Lösung

<a href="mailto:me@me.com?subject=Me&body=%3Chtml%20xmlns%3D%22http:%2F%2Fwww.w3.org%2F1999%2Fxhtml%22%3E%3C%2Fhead%3E%3Cbody%3EPlease%20%3Ca%20href%3D%22http:%2F%2Fwww.w3.org%22%3Eclick%3C%2Fa%3E%20me%3C%2Fbody%3E%3C%2Fhtml%3E">

Die Spezifikation für 'mailto' Körper sagt:

  

Der Körper einer Nachricht ist einfach Linien von US-ASCII-Zeichen. Das      nur zwei Einschränkungen auf dem Körper sind wie folgt:

     
      
  • CR und LF muss nur zusammen als CRLF auftreten; Sie dürfen nicht unabhängig voneinander im Körper erscheinen.
  •   
  • Die Linien der Zeichen im Körper muss auf 998 Zeichen beschränkt sein und sollte auf 78 Zeichen beschränkt sein, mit Ausnahme der CRLF.
  •   

https://tools.ietf.org/html/rfc5322#section-2.3

Im Allgemeinen heutzutage die meisten E-Mail-Clients sind bei autolinking gut, aber alle aufgrund von Sicherheitsbedenken nicht tun. Sie können wahrscheinlich einige Workarounds finden, aber es wird nicht unbedingt universell funktionieren.

ich implementieren folgende es für iOS-Geräte arbeiten aber nicht auf Android-Geräte

<a  href="mailto:?subject=Your mate might be interested...&body=<div style='padding: 0;'><div style='padding: 0;'><p>I found this on the site I think you might find it interesting.  <a href='@(Request.Url.ToString())' >Click here </a></p></div></div>">Share This</a>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top