html评论中的Javascript

时间:2016-03-17 20:23:47

标签: javascript html comments

我正在用html写一封电子邮件,在电子邮件中,我有部分我只想在特定的浏览器/电子邮件客户端中显示,为此我正在使用评论。

有没有办法在html注释中为具有特定类的元素提供javascript选择器。 javascript代码不在评论中。

这是我想在

上运行我的脚本的html的测试示例
<div>
    <div class="test"></div>
    <!--[if (gte mso 9)|(IE)]>
        <div>This appears in Outlook</div>
        <div class="test"></div>
    <![endif]-->
</div>

和测试脚本

$(".test").html("This is a test");

我已经尝试过了,在查看outlook中的电子邮件时,结果看起来像

This is a test
This appears in Outlook

而不是

This is a test
This appears in Outlook
This is a test

感谢您的帮助

更新

原来我让每个人都感到困惑,这是可以理解的。我没有在电子邮件中包含脚本。该脚本之前正在运行,它有助于从模板创建HTML。然后将其结果作为电子邮件发送。

所以,我真正要求的只是让我的javascript访问元素在评论中的一种方式。它在电子邮件中并不重要。我只提到了电子邮件,说明为什么我需要评论。对不起,感到困惑。

2 个答案:

答案 0 :(得分:0)

邮件客户端不允许在邮件中使用JavaScript。它允许潜在的有害内容,例如黑客窃取浏览器cookie的代码。大多数电子邮件客户端也不喜欢HTML消息。

所以,不要使用HTML邮件,只需坚持使用普通邮件。

答案 1 :(得分:0)

您无法在电子邮件客户端中执行代码(例如JS)。也许有些恐龙电子邮件客户端在其早期版本中曾经允许这样做,但由于这个“功能”会带来安全问题,因此没有理智的电子邮件客户端(基于浏览器或桌面版本)将允许这样做。

我的第一个想法是建议研究是否可以使用条件内联CSS(例如<div style="display:none;[some clever css that only ie will figure out then display:block]"></div> ... followed by other per-browser DIV+inline-CSS variations here),但这是一个长镜头。见this question。然而,即使这样的CSS技巧确实存在,你仍然不能依赖它们,因为你无法知道用户将使用哪个电子邮件客户端来查看你的消息。