JavaScriptは電子メールメッセージでサポートされていますか?


146

JavaScriptは電子メールメッセージでサポートされていますか?


38
これは-1に値しません
kikito

1
対象のメールプログラムはOutlookですか?サンダーバード?Gmail?ホットメール?上記のすべて?その他?メールプログラムが異なると、メールのレンダリングも異なります。
WonderWorker

1
ロケットテーマの連中がカウントダウンをしているのを見ただけで、数日、数分、数秒、グラフィックもアニメーションで表示されています。他にどのようにこれを行っているのかわかりません。Macメールクライアントで観察されます。
着陸

2
ドメインを見つけて取得しました-motionmailapp.com
着陸

3
@landed同じことをWordPressからのメールで見ただけです。これは、動的に生成されたGIFであり、フェッチされたときからカウントダウンを開始します(45秒後にリセットされます。45秒以内にクリックしなかった場合、おそらく既にメールを閉じていると思います)。
Lionel Rowe

回答:


49

http://en.wikipedia.org/wiki/Comparison_of_e-mail_clients

Lotus Notes、Mozilla Thunderbird、Outlook Express、Windows Live Mailなどの古いクライアントはすべて、何らかのJavaScriptの実行をサポートしていたようです。他には何もしません。

セキュリティの点で悪い考えのように思えるので、これらのクライアントであっても、これが常に存在するとは限らない機能であると思います。


9
「Lotus Notes、Mozilla Thunderbird、Outlook Express、Windows Live Mailはすべて、なんらかのJavaScriptの実行をサポートしているようです」—メッセージテンプレートスクリプトでは、受信したメールではサポートされません。
クエンティン

2
うわー、これらのクライアントは今や古すぎて、以前は彼らがどのように動作していたかについてのリンクが消えてしまい、私はそれを確認したり否定したりできません。6年後、何らかの目的でスクリプトの実行が有効になっている単一の電子メールクライアントがまだ使用されているとしたら、私は驚きます。
MatthewMartin 2016

18

いいえ、一般的に言えば、電子メールリーダーはJavaScriptを許可しません。


2
ChromeブラウザのGmailはどうですか?
Nicolas S.Xu 2017

1
@ NicolasS.Xu Gmailは、ブラウザに渡す前にJavaScriptをメールから削除します。したがって、JSは機能しません。Firefox 56とChrome 61でGmailをテストしました。ウェブマスターツールでコードを確認したところ、JSコードが削除されています。
Christopher K.17年

18

他の回答者は、答えは「いいえ」であると提案しています。

一方、html添付ファイルは、おそらくJavaScriptを実行する環境で開かれます。

編集:私は質問に適切に答えていないことが示唆されたので、ここでより完全な努力をします。

概要:Javascriptが埋め込まれたHTML形式の電子メールを受信する多くのユーザーまたはほとんどのユーザーが、Javascriptが実行されていることを確認し、一部の環境でこれが当てはまることを確認するテストを実行すると予想します。ただし、一部のユーザーに対してはJavaScriptがブロックされます。

プロトコル(特にRFC2854)は、次のステートメントを使用して(text / htmlメッセージ本文タイプ内の)スクリプトを明示的に処理します。

さらに、HTML 4.0でのスクリプト言語とインタラクティブ機能の導入により、送信者が作成し、受信者が解釈するプログラムの自動実行に関連するセキュリティリスクがいくつか導入されました。このようなスクリプトまたはプログラムを実行するユーザーエージェントは、信頼できないソフトウェアが保護された環境で実行されるように、細心の注意を払う必要があります。

プロトコルはJavaScriptをサポートしていますが、どのユーザーエージェントがサポートしていますか?

私の(古代の)電子メールリーダーは、テーブルを使用して、各MIMEタイプに使用するビューアソフトウェアを指定し、HTMLコンテンツをお気に入りのWebブラウザに転送します。ほとんどすべての現在のWebブラウザーはJavascriptをサポートしています(オフにしようとすると、いくつかの問題が深刻な警告になります!)最新のメールエージェントには内部htmlインタープリターが含まれていますか。Thunderbirdのドキュメントを確認したところ、JavaScriptはデフォルトでオンになっているように見えますが、オフにすることができます。http//codeverge.com/mozilla.support.thunderbird/simple-html-tags-reference-docume/2030160

一部の(?多数?)ユーザーが、個別の電子メールソフトウェアを実行するのではなく、ブラウザーから直接電子メールにアクセスしている(ウェブメールはそのようなプラットフォームの1つ)ことに気づきました。これまでにテストしたすべてのプラットフォームは、電子メールメッセージのhtmlに埋め込まれたJavascriptを実行します。ただし、一部のそのような環境は、ユーザーのセキュリティ設定に応じて、外部リンク(Javascriptまたは画像など)を自動的にフェッチせず、メッセージの添付ファイルとして含まれているファイルからのみ外部Javascriptを実行できます。同じことは、現在インターネットに接続していないデバイス上のオフライン電子メールリーダーにも当てはまります。

上記は、メール本文のメインメッセージ部分に埋め込まれたJavaScriptに適用されます。htmlを「添付ファイル」として明示的に指定することもできます。これを保存して開くと、Webブラウザーに表示されます。Javascriptは非常に高い確率で使用できます。したがって、JavaScriptを有効にした電子メールの2番目のコピーをHTML添付ファイルとして、ユーザーを添付ファイルに誘導するメインテキスト/ HTMLの代替テキスト/プレーン本文またはタグとともに含めることができます。

私がこれを考えていたのは、私の知り合いの一部が私にリンクを送るのにテキストメッセージで構成されている「メールグリーティングカード」を送信することを強く要求しているためです。 。インタラクティブなグラフィックスと音楽、さらには組み込みのJavaScriptを使用したゲームでグリーティングカードを書いて送信し、結果に満足しています。

したがって、私は、プロトコルがスクリプトに具体的に対処しているという理由と、個人的に使用するすべてのメールエージェントがテストメールでJavascriptを実行したという理由の両方において、正しい答えが「はい」であると主張します。


2
JSを正常にテストし、JSコードを使用したクライアントの具体的なリストは提供しません。「元のHTML」設定でThunderbird 52.4.0を確認し<script> document.write('test'); </script>ましたが、テストメールのJSは無視されました。Outlook for Android 2.2.44、K-9 for Android 5.208、Gmailウェブメーラー(テスト済み06.11.2017)、Roundcubeウェブメーラー0.9.5でも同じです。そのため、ほとんどの(現代の)クライアントでは機能しないという意見に同意します。ほとんどのユーザーがWebメーラーを使用していることは事実ですが、正当な理由により、ブラウザーにメッセージを渡す前にメッセージからJSが取り除かれているようです。
クリストファーK.

1
Thunderbirdの「ドキュメント」へのリンクはドキュメントではなく、ユーザーから寄せられた質問を指しているため、公式ドキュメントを検索したところ、次のことわかりました:developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Releases / 3-電子メールのJSがThunderbird 3で削除されたと書かれています
Christopher K.

14

短い答え

番号


説明的な答え

場合によります。ただし、メールの動作が保証されているわけではありません。メールクライアントごとにJSの扱いが異なります。新しい電子メールクライアントのほとんどは、個人情報の多くを含むデスクトップアプリケーションでスクリプトの実行をサポートすることは潜在的に非常に危険であるため、それをサポートしていません。

メールでJSを使用する必要があるユースケースがありました。OutlookとデスクトップクライアントのWebクライアントも試してみましたが、HTMLメールのスクリプト部分が完全に消去されてしまいました。JS実行をサポートする他の電子メールクライアントが存在する可能性がありますが、クライアントマシンで電子メールが表示されるクライアントを制御できない場合、HTML電子メールにスクリプトを埋め込むことはお勧めできません。

HTMLメールをできるだけシンプルに、JSを使わず、CSSを最小限に抑えることをお勧めします(繰り返しになりますが、さまざまなメールクライアントでもさまざまなCSSがサポートされているためです)。メールのボタンタグ。ボタンの表示を模倣するには、アンカータグとその上にあるCSSを使用する必要がありました。


結論-HTML電子メールコンテンツを操作する場合は、JavaScriptに依存しないでください。


4

サーバーとメールクライアントに実行可能なJavaScriptを取得するつもりはありません。メールはリンクをサポートしていますが、メール内のコンテンツにいつでもリンクできます。



2

可能性はありますが、メールクライアントはそれを読み取らず、メールサーバーが拒否する可能性があります。だからそれを省いてください。


1

JavaScriptは電子メールではサポートされていません。


2
それは真実ではありません。少なくともOutlookおよびOutlook ExpressはJavascriptをサポートしています。これは、(セキュリティ上の理由から)それらを回避する多くの理由の1つです。
PauliL

1
@PauliL:制限付きサイトゾーンの設定で許可されているかどうかによって異なります。
Neil Knight、

0

Windows LiveメールでJavaScriptを使用してメールを表示できますが、送信する新しいメールにJavaScriptを追加することはできません。JavaScriptは、保存された.emlファイルでも機能します。Mozilla Thunderbirdバージョン60.7.0は、JavaScriptを表示または追加できません。(Thunderbirdでemlファイルを保存した場合、ファイルがLive Mailで読み込まれるとコードが機能します)PHPコードを使用してJavaScriptでメールを送信できます。一部の電子メールWebサイトはそれをサポートしているかもしれませんが、私が使用したいくつかはサポートしていません。(AOL、uk2.net、GMail)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.