我看着设置this up,只是出于好奇,但当他们声明要工作时,我有点困惑:
查找设置Google Analytics Cookie的所有Javascript元素。示例可能包括Google Analytics和StatCounter。 修改脚本代码,使type属性为“text / plain”而不是“text / javascript”
这会导致某些网络浏览器出现任何问题吗?它会导致HTML不再验证吗?
此外,“类型”属性是否真的能够达到目的?我以前只看过它分配过“text / JavaScript”吗?
答案 0 :(得分:6)
如果意图是浏览器不将元素的内容解释为脚本代码,而是将其解释为未呈现的文本数据,则不会导致问题。它是脚本使用它,但否则它被忽略。好吧,在某些浏览器中,可能会使用CSS使内容可见,但默认情况下它不会显示。
使用<script type="text/plain">
对HTML规范有效。即使<script type="Hello world ☺">
有效,但它违反了散文要求,即属性值是MIME类型。规范并未指定其含义,但唯一可行的解释,以及浏览器在实践中所做的是,它不是任何脚本语言,也不会尝试执行脚本。
因此,type="text/plain"
可用于故意阻止脚本的执行,同时仍将其保留在源代码中。它也可以用于携带用于某些处理的字符数据。
type
属性可以用于这样的目的,它也可以用于指定除JavaScript以外的脚本语言(很少使用,但在某些环境中仍然可以)。不需要使用type
属性来指定JavaScript,也不建议使用:您可能唯一能做的就是错误:如果您输入错误,例如type="text/javascript"
,内容将被视为未知语言,因此被忽略。
答案 1 :(得分:0)
这会导致某些网络浏览器出现任何问题吗?
没有
是否会导致HTML不再验证?
没有
此外,“type”属性是否真的服务于目的了?
浏览器使用它来决定运行代码的解释器(或者它们是否应该下载外部src
ed代码。
将其设置为text/plain
会将其设置为浏览器不具备解释器的类型(因为它不是编程语言),这就是重点。
答案 2 :(得分:-1)
"application/javascript"
是必须的。但正如预期的那样,IE的大多数旧版本都不支持这一点。因此,在任何地方使用"text/javascript"
都是安全的。