电子邮件中是否支持JavaScript?

2020/11/14 06:42 · javascript ·  · 0评论

电子邮件中是否支持JavaScript?

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。

简短答案

没有


描述性答案

这取决于。但是,不能保证电子邮件会按照您希望的方式运行。不同的电子邮件客户端对JS的处理方式也不同。大多数较新的电子邮件客户端不支持任何一种,因为在包含大量个人信息的桌面应用程序中支持脚本执行可能非常危险。

我有一个用例,需要在电子邮件中使用JS。我还尝试了Outlook和Web客户端的Web客户端,结果发现Outlook只是抹掉了HTML电子邮件的脚本部分。可能还有其他一些电子邮件客户端支持JS执行,但是鉴于您无法控制客户端在客户端计算机上查看电子邮件的位置,因此在HTML电子邮件中嵌入任何脚本不是一个好主意。

它的建议是使您的HTML电子邮件尽可能简单,没有JS,并且可以使用的CSS最少(因为,同样,不同的电子邮件客户端对CSS的支持也不同),例如:Outlook的Web客户端甚至无法识别HTML电子邮件中的按钮标签。我不得不在其顶部使用锚标记和一些CSS来模仿按钮的显示。


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

您不会将可执行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)

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

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

     <!DOCTYPE html>
     <html>
     <body>
     <button onclick="this.innerHTML=Date()">The time is?</button>
     </body>
     </html>
本文地址:http://javascript.askforanswer.com/dianziyoujianzhongshifouzhichijavascript.html
文章标签: ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!