电子邮件中是否支持JavaScript?
电子邮件中是否支持JavaScript?
Answers:
http://en.wikipedia.org/wiki/Comparison_of_e-mail_clients
旧客户端(例如Lotus Notes,Mozilla Thunderbird,Outlook Express和Windows Live Mail)似乎都支持某种JavaScript执行。没有别的。
从安全角度看,这似乎是个坏主意,所以我希望即使在这些客户端中,它也不会永远存在。
不,一般而言,电子邮件阅读器不允许使用JavaScript。
其他答复者建议答案为“否”。
另一方面,html附件可能会在运行Javascript的环境中打开。
编辑:有人建议我没有正确回答问题,因此在此进行了更全面的努力。
简介:我希望接收到包含嵌入式Javascript的html格式电子邮件的许多或大多数用户将看到它运行,并且已经运行测试以确认在某些环境中的确如此。但是Javascript对于某些用户将被阻止。
协议(特别是RFC2854)使用以下语句明确地处理脚本(在text / html消息正文类型内):
此外,HTML 4.0中脚本语言和交互功能的引入引入了与自动执行由发送者编写但由接收者解释的程序相关的许多安全风险。执行此类脚本或程序的用户代理必须格外小心,以确保不受信任的软件在受保护的环境中执行。
因此,协议确实支持Javascript,但是哪些用户代理支持呢?
我的(古老的)电子邮件阅读器使用一个表格来指定每种模仿类型要使用的查看器软件,从而将html内容转移到我最喜欢的Web浏览器中。当前几乎所有的Web浏览器都支持Javascript(当您尝试关闭Java时会发出可怕的警告!)现代电子邮件代理程序是否包含内部html解释器,如果是,则打开或关闭JavaScript?我检查了有关Thunderbird的文档,发现javascript默认似乎处于打开状态,但可以关闭:http : //codeverge.com/mozilla.support.thunderbird/simple-html-tags-reference-docume/2030160
我注意到一些(许多用户)现在可以直接从浏览器访问电子邮件(网络邮件就是这样一种平台),而不是运行单独的电子邮件软件。到目前为止,我测试过的所有此类平台都可以运行嵌入在电子邮件html中的任何Javascript。但是,根据用户安全性设置,某些此类环境不会自动获取外部链接(Java脚本,图片或其他),因此只能从包含在消息附件中的文件中运行外部Java脚本。对于没有当前Internet连接的设备上的任何脱机电子邮件阅读器,情况也是如此。
以上内容适用于嵌入在电子邮件正文主要消息部分中的javascript。也可以将html明确地指定为“附件”,如果将其保存然后打开,将在Web浏览器中显示该HTML,其中Javascript的可能性很高。因此,可能会包含第二个以html附件形式启用了javascript的电子邮件,并在主文本/ html中使用替代文本/纯文本主体和/或标签来将用户定向到附件。
我一直在考虑这个问题,因为我的一些熟人坚持要给我发送“电子邮件贺卡”,其中包含一条文本消息,将我定向到一个链接,我发现它并不令人满意,以至于我什至拒绝考虑仅按原则加载它。我已经使用嵌入式Javascript编写并发送了带有交互式图形和音乐甚至游戏的电子邮件贺卡,并对结果感到满意。
因此,我坚持认为正确的答案是“是”,既因为协议专门解决了脚本问题,又因为我个人使用的所有电子邮件代理都在测试电子邮件中运行了Javascript。
<script> document.write('test'); </script>
测试电子邮件中的JS 。适用于Android 2.2.44的Outlook,适用于Android 5.208的K-9,Gmail Webmailer(测试于2017年11月6日)和Roundcube webmailer 0.9.5。因此,我同意那些说它不适用于大多数(现代)客户的说法。的确,大多数用户都使用Webmailer,但是有一个很好的理由,这些用户似乎在将邮件移交给浏览器之前将JS从邮件中删除了。
没有
这取决于。但是,不能保证电子邮件会按照您希望的方式运行。不同的电子邮件客户端对JS的处理方式不同。大多数更新的电子邮件客户端不支持任何一种,因为在包含大量个人信息的桌面应用程序中支持脚本执行可能非常危险。
我有一个用例,需要在电子邮件中使用JS。我也在Outlook和Web客户端的Web客户端上进行了尝试,结果发现Outlook只是清除了HTML电子邮件的脚本部分。可能还有其他一些电子邮件客户端支持JS执行,但是鉴于您无法控制客户端在客户端计算机上查看电子邮件的位置,因此在HTML电子邮件中嵌入任何脚本不是一个好主意。
它建议尽量使您的HTML电子邮件尽可能简单,没有JS,并且可以使用的CSS最少(因为同样,不同的电子邮件客户端对CSS的支持也不同),例如:Outlook的Web客户端甚至无法识别HTML电子邮件中的按钮标签。我必须使用锚标记和它上面的一些CSS来模仿按钮的显示。
底线-处理HTML电子邮件内容时不要依赖Javascript。
电子邮件不支持Javascript。
您可以使用Windows Live Mail使用JavaScript来查看电子邮件,但不能将JavaScript添加到要发送的新电子邮件中。JavaScript还可以与保存的.eml文件一起使用。Mozilla Thunderbird 60.7.0版无法查看或添加JavaScript。(如果使用Thunderbird保存了eml文件,则该文件将在Live Mail加载后生效。)您可以使用PHP代码使用JavaScript发送电子邮件。一些电子邮件网站可能支持它,但我使用的少数电子邮件网站不支持。(AOL,uk2.net,GMail)