在电子邮件消息中是否支持JavaScript ?


当前回答

简短的回答

No


描述性的回答

视情况而定。但是电子邮件并不能保证按照你想要的方式运行。不同的电子邮件客户端处理JS的方式不同。大多数新的电子邮件客户端都不支持这些,因为在包含大量个人信息的桌面应用程序中支持脚本执行是非常危险的。

我有一个用例,我需要在电子邮件中使用JS。我也在outlook的网页客户端和桌面客户端上进行了测试,结果发现outlook会删除HTML电子邮件中的脚本部分。可能有其他一些支持JS执行的电子邮件客户端,但考虑到您无法控制客户端,在客户端机器中查看您的电子邮件,在HTML电子邮件中嵌入任何脚本不是一个好主意。

建议让你的HTML电子邮件尽可能简单,没有JS,和最少的CSS(因为,再次强调,不同的电子邮件客户端也有不同的CSS支持),例如:outlook的web客户端甚至不能识别电子邮件中的HTML按钮标签。我必须使用一个锚标记和一些CSS在它上面来模拟按钮的显示。


底线——处理HTML电子邮件内容时不要依赖Javascript。

其他回答

不,一般来说,电子邮件阅读器不允许javascript。

它可能是,但邮件客户端不会读取它,邮件服务器可能会拒绝它。所以把它放一边。

在电子邮件中不支持Javascript。

出于安全考虑,电子邮件客户端不支持javascript

尝试发送带有此HTML内容的邮件

     <!DOCTYPE html>
     <html>
     <body>
     <button onclick="this.innerHTML=Date()">The time is?</button>
     </body>
     </html>

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

以前的客户端,如Lotus Notes、Mozilla Thunderbird、Outlook Express和Windows Live Mail似乎都支持某种JavaScript执行。其他的都不行。

从安全角度来看,这似乎是一个坏主意,所以我希望这个功能不会一直存在,即使是在这些客户机中。