Wird JavaScript in einer E-Mail-Nachricht unterstützt?
Wird JavaScript in einer E-Mail-Nachricht unterstützt?
Antworten:
http://en.wikipedia.org/wiki/Comparison_of_e-mail_clients
Alte Clients wie Lotus Notes, Mozilla Thunderbird, Outlook Express und Windows Live Mail scheinen eine JavaScript-Ausführung unterstützt zu haben. Sonst nichts.
In Bezug auf die Sicherheit scheint dies eine schlechte Idee zu sein, daher würde ich erwarten, dass dies eine Funktion ist, die selbst bei diesen Clients nicht immer verfügbar ist.
Nein, E-Mail-Reader erlauben im Allgemeinen kein Javascript.
Andere Antwortende haben vorgeschlagen, dass die Antwort "Nein" ist.
Andererseits wird ein HTML-Anhang wahrscheinlich in einer Umgebung geöffnet, in der Javascript ausgeführt wird.
EDIT: Es wurde vorgeschlagen, dass ich die Frage nicht richtig beantwortet habe, daher hier eine umfassendere Anstrengung.
Zusammenfassung: Ich würde erwarten, dass viele oder die meisten Benutzer, die eine HTML-formatierte E-Mail mit eingebettetem Javascript erhalten, diese ausführen und Tests durchführen lassen, um zu bestätigen, dass dies in einigen Umgebungen der Fall ist. Aber Javascript wird für einige Benutzer blockiert.
Die Protokolle (insbesondere RFC2854) befassen sich explizit mit Skripten (innerhalb des Text- / HTML-Nachrichtentexttyps) mit der folgenden Anweisung:
Darüber hinaus führte die Einführung von Skriptsprachen und interaktiven Funktionen in HTML 4.0 zu einer Reihe von Sicherheitsrisiken, die mit der automatischen Ausführung von Programmen verbunden sind, die vom Absender geschrieben, aber vom Empfänger interpretiert wurden. Benutzeragenten, die solche Skripte oder Programme ausführen, müssen äußerst vorsichtig sein, um sicherzustellen, dass nicht vertrauenswürdige Software in einer geschützten Umgebung ausgeführt wird.
Die Protokolle unterstützen also Javascript, aber welche Benutzeragenten?
Mein (alter) E-Mail-Reader verwendet eine Tabelle, um anzugeben, welche Viewer-Software für jeden Mimetyp verwendet werden soll, und leitet HTML-Inhalte zu meinem bevorzugten Webbrowser um. Fast alle aktuellen Webbrowser unterstützen Javascript (und einige Probleme, wenn Sie versuchen, es auszuschalten!). Enthalten moderne E-Mail-Agenten interne HTML-Interpreter, und wenn ja, ist das Javascript ein- oder ausgeschaltet? Ich habe die Dokumentation zu Thunderbird überprüft und festgestellt, dass Javascript standardmäßig aktiviert zu sein scheint, aber deaktiviert werden kann: http://codeverge.com/mozilla.support.thunderbird/simple-html-tags-reference-docume/2030160
Ich habe festgestellt, dass einige (? Viele?) Benutzer jetzt direkt über einen Browser auf ihre E-Mails zugreifen (Webmail ist eine solche Plattform), anstatt eine separate E-Mail-Software auszuführen. Auf allen Plattformen, die ich bisher getestet habe, wird Javascript ausgeführt, das in das HTML der E-Mail-Nachricht eingebettet ist. Einige dieser Umgebungen rufen jedoch abhängig von den Sicherheitseinstellungen des Benutzers externe Links (Javascript oder Bilder oder andere) nicht automatisch ab und können daher nur externes Javascript aus einer Datei ausführen, die als Anhang zur Nachricht enthalten ist. Gleiches gilt für alle Offline-E-Mail-Reader auf einem Gerät ohne aktuelle Internetverbindung.
Dies gilt für Javascript, das in den Hauptnachrichtenteil des E-Mail-Textes eingebettet ist. Man kann HTML auch explizit als "Anhang" angeben lassen, der beim Speichern und anschließenden Öffnen in einem Webbrowser angezeigt wird, in dem Javascript mit sehr hoher Wahrscheinlichkeit verfügbar ist. Daher kann eine zweite Kopie der Javascript-fähigen E-Mail als HTML-Anhang mit einem alternativen Text / einfachen Hauptteil und / oder Tag in den Haupttext / HTML eingefügt werden, der den Benutzer zum Anhang weiterleitet.
Ich habe darüber nachgedacht, weil einige meiner Bekannten darauf bestehen, mir "E-Mail-Grußkarten" zu senden, die aus einer Textnachricht bestehen, die mich zu einem Link weiterleitet, den ich so unbefriedigend fand, dass ich es ablehne, ihn grundsätzlich überhaupt zu laden . Ich habe E-Mail-Grußkarten mit interaktiven Grafiken und Musik und sogar Spielen mit eingebettetem Javascript geschrieben und gesendet und war mit dem Ergebnis zufrieden.
Daher behaupte ich, dass die richtige Antwort "Ja" ist, sowohl weil die Protokolle speziell Skripte behandeln als auch weil alle von mir persönlich verwendeten E-Mail-Agenten das Javascript in meinen Test-E-Mails ausgeführt haben.
<script> document.write('test'); </script>
in meinen Test-E-Mails ignoriert . Gleiches gilt für Outlook für Android 2.2.44, K-9 für Android 5.208, Google Mail Webmailer (getestet am 06.11.2017) und Roundcube Webmailer 0.9.5. Daher würde ich denen zustimmen, die sagen, dass es bei den meisten (modernen) Kunden nicht funktioniert. Es ist wahr, dass die meisten Benutzer Webmailer verwenden, aber aus gutem Grund scheinen diese JS aus den Nachrichten zu entfernen, bevor sie an den Browser übergeben werden.
Nein
Es hängt davon ab, ob. Es ist jedoch nicht garantiert, dass sich die E-Mail so verhält, wie Sie es möchten. Verschiedene E-Mail-Clients behandeln JS unterschiedlich. Die meisten neueren E-Mail-Clients unterstützen nichts davon, da es möglicherweise sehr gefährlich ist, die Skriptausführung in einer Desktop-Anwendung zu unterstützen, die so viele Ihrer persönlichen Daten enthält.
Ich hatte einen Anwendungsfall, in dem ich JS in einer E-Mail verwenden musste. Ich habe es auch auf dem Webclient von Outlook und Desktop Client ausprobiert, und es stellte sich heraus, dass Outlook nur den Skriptteil Ihrer HTML-E-Mail löscht. Möglicherweise gibt es einen anderen E-Mail-Client, der die JS-Ausführung unterstützt. Da Sie jedoch nicht steuern können, wo Ihre E-Mail auf dem Client-Computer angezeigt wird, ist es keine gute Idee, Skripts in die HTML-E-Mail einzubetten.
Es wird empfohlen, Ihre HTML-E-Mail so einfach wie möglich zu halten, kein JS und das geringste CSS, mit dem Sie arbeiten können (da wiederum verschiedene E-Mail-Clients unterschiedliche Unterstützung für CSS haben), z. B.: Der Webclient von Outlook erkannte nicht einmal HTML Button-Tag in der E-Mail. Ich musste ein Ankertag und etwas CSS darüber verwenden, um die Anzeige einer Schaltfläche nachzuahmen.
Fazit: Verlassen Sie sich bei der Arbeit mit HTML-E-Mail-Inhalten nicht auf Javascript.
Javascript wird in E-Mails nicht unterstützt.
Sie können eine E-Mail mit JavaScript anzeigen, das mit Windows Live Mail funktioniert, aber einer neuen E-Mail, die Sie senden möchten, kein JavaScript hinzufügen. JavaScript funktioniert auch mit gespeicherten EML-Dateien. Mozilla Thunderbird Version 60.7.0 kann kein JavaScript anzeigen oder hinzufügen. (Wenn Sie eine EML-Datei mit Thunderbird speichern, funktioniert der Code, wenn die Datei dann mit Live Mail geladen wird.) Sie können eine E-Mail mit JavaScript mithilfe von PHP-Code senden. Einige E-Mail-Websites unterstützen dies möglicherweise, die wenigen, die ich verwendet habe, jedoch nicht. (AOL, uk2.net, GMail)