2009-07-06 6 views
27

Wie Sie Javascript in HTML-E-Mails einfügen - Wir benötigen es zum Erweitern und Reduzieren des Inhalts in der HTML-E-Mail.HTML-E-Mail mit Javascript

+0

Collapsing kann mit CSS erreicht werden: https://www.campaignmonitor.com/blog/email-marketing/2011/08/designing-ultra-short-emails-for-mobile-using-progressive-disclosure/ Das ist hauptsächlich für iPhones jedoch. – revelt

+0

Mögliches Duplikat von [Wird JavaScript in einer E-Mail-Nachricht unterstützt?] (Http://stackoverflow.com/questions/3054315/is-javascript-supported-in-an-email-message) – HPierce

+0

Ich denke, Sie können 'Javascript machen 'in Mail mit defaulted Codierung' base64' angehängt und dann Ihren Code zwickt grundlegend zum Rendern.Erkundigen Sie sich bei betroffenen RFCs von IETF. Da ist ein Weg. –

Antwort

50

Ich denke nicht, dass das in einer E-Mail möglich ist, noch sollte es sein. Es würde große Sicherheitsrisiken geben.

+1

Ich stimme dir zu. Aber ich habe eine Werbepost von unserer beliebten Website des Landes bekommen: pigu.lt und interne Post wurde platziert (und ändern) Countdown-Timer, um Rabatt Zeit ist vorbei. WIE IST ES MÖGLICH? Über Bildausnahmen? .. – JDSolutions

+1

@JDSolutions Der Timer ist ein statisches Bild, aber der Server dient neu und neu, und es scheint dynamisch. Suchen Sie nach beweglichen Elementen, um mehr über dynamische Elemente in E-Mails zu erfahren. – revelt

20

Verlassen Sie sich nicht darauf. Jeder gute E-Mail-Client unterstützt keinen ausführbaren Code in einer E-Mail. Jeder sachkundige Benutzer wird keinen Client verwenden, der dies tut.

25

Stimmen Sie vollständig mit Bryan und anderen überein.

Verwenden Sie stattdessen mehrere Abschnitte in Ihrer E-Mail, über die Sie Links und Anker (das A-Tag) verwenden können. Ich denke, dass Sie das gewünschte Verhalten emulieren können, indem Sie mehrere Kopien des Textes weiter unten in Ihre E-Mail einfügen. Dies ist jedoch eine chaotische Wette, so dass Sie einfach Gruppen von Ankern haben können, die sich miteinander verbinden und es Ihnen ermöglichen, zwischen dem Abschnitt "Zusammenfassung" und dem "Erweitert" zurück zu wechseln.

Beispiel:

<a href="#section1">Jump to section!</a> 
<p>A bunch of content</p> 
<h2 id="section1">An anchor!</h2> 

Klicken auf den ersten Link wird Fokus zu dem Unterabschnitt bewegen.

+4

Beachten Sie, dass Sie to put down an anchor for the link - just having an element with the proper id attribute will work. So if you have Jump to section! nicht verwenden müssen, und später, wenn dieser Abschnitt gestartet wird, brauchen Sie nur etwas wie

Section 1

. – Xanthir

+0

Während die anderen hier offensichtlich auch korrekt sind, bin ich ein wenig schockiert, dass diese Antwort nicht mehr dazu kam, dass die Stimmen nicht nur stimmen, sondern auch der einzige Versuch, das OP zu korrigieren. – Lance

8

Nur zur Warnung, viele moderne E-Mail-Browser haben JavaScript für eingehende E-Mails deaktiviert, da dies zu Sicherheitsproblemen führen kann. Dies bedeutet, dass viele der Personen, denen Sie E-Mails senden, den Inhalt möglicherweise nicht verwenden können.

PS. Habe die Post nicht zum Zeitpunkt der Veröffentlichung gesehen. Mein Fehler.

6

Die kurze Antwort ist, dass Skripting in E-Mails nicht unterstützt wird.

Dies ist nicht überraschend, angesichts der offensichtlichen Sicherheitsrisiken bei einem Skript, das in einer Anwendung ausgeführt wird, in der alle persönlichen Informationen gespeichert sind.

Webmail-Clients führen die Benutzeroberfläche meist in JavaScript aus und sind nicht daran interessiert, dass Ihre E-Mail-Funktion dies beeinträchtigt. Desktop-Clientfilter betrachten JavaScript häufig als Indikator für Spam- oder Phishing-E-Mails. Selbst in den Fällen, in denen es ausgeführt werden könnte, ist das Scripting in E-Mails von geringem Nutzen.

Halten Sie Ihre E-Mails als direkt HTML und CSS, und vermeiden Sie den Ärger. Hier ist, was Sie in HTML-E-Mails können: https://www.campaignmonitor.com/guides/coding/technologies/

0

Hier ist, was Sie CAN tun:

Sie anhängen können (an die E-Mail) ein HTML-Dokument, das Sie Javascript enthält.

Wenn der Empfänger dann den Anhang öffnet, erleichtert sein Webbrowser die dynamischen Funktionen, die Sie implementiert haben.

+4

kann ich nicht stark genug dagegen empfehlen. Zum einen werden Sie mit Sicherheit als Spam markiert, wenn Sie einen HTML-Anhang senden. Zum anderen werden Sie wahrscheinlich auf JavaScript-Probleme stoßen. Und zum anderen wäre es eine schreckliche Nutzererfahrung. Wenn Sie jetzt nur einen Link zu einer URL hinzufügen, wäre das sinnvoll. –

+2

Abgestimmt! Ich möchte dies unabhängig davon tun, um zu überprüfen, dass der Client das Skript nicht ausführen wird. –

+0

Diejenigen, die dies abgelehnt haben, geben ihre Gründe an, besonders wenn es nur eine reflexartige "moralische" Reaktion war, denn dies ist eine * technische * Diskussion. Jeder, besonders diejenigen, die auf dieser Seite tief in das Thema eindringen, sind sich der Sicherheitsverästelungen ohnehin bewusst. Und trotzdem sollten die Guten, die das lesen, wissen - * noch mehr als die Bösen! ... * - was kann getan werden und was nicht. –

0

Sie können HTML Radio/Checkbox-Eingabe mit Labels und CSS verwenden, um die gewünschten Expandierungseffekte zu erzielen.