【发布时间】:2012-01-16 10:42:55
【问题描述】:
是否有可能在脚本的"language"没有明确定义的地方,JavaScript不会被执行?
<script type="text/javascript">
嵌入到 JSP / HTML 页面的这段 JavaScript。
【问题讨论】:
标签: javascript
是否有可能在脚本的"language"没有明确定义的地方,JavaScript不会被执行?
<script type="text/javascript">
嵌入到 JSP / HTML 页面的这段 JavaScript。
【问题讨论】:
标签: javascript
script 标签的语言属性几乎被普遍贬低;你不再需要它了。
此外,如果 HTML5 是 Javascript,则不需要 type 属性,但您可能希望为旧版浏览器保留它。
【讨论】:
无论出于何种原因,这都无关紧要。它只是说它只是作为一个页面下载的,但浏览器将其解释为 JavaScript。
【讨论】:
文件的 MIME-Type 由服务器设置。对于 JS 文件,应返回 text/javascript 的 MIME-Type。这里没有这样做,这就是你收到通知的原因。
<script> 中的 language 属性已弃用。
<script type="text/javascript">
是正确的。
另见:What is the difference between "lang" and "type" attributes in a script tag?
MIME 类型是服务器随请求的任何文件一起发送的标头。客户当然可以随意忽略它。通常,如果您的文件是 *.js 文件,您的网络服务器将为您选择正确的 MIME 类型,如果您的文件是返回 JavaScript 文件的 .jsp 脚本,那么您可能需要自己设置 MIME 类型标头,这在大多数语言中是相当微不足道的,我不知道如何在 JSP 中做到这一点,但在 PHP 中它是: header("MIME-Type: text/javascript");在您开始回显实际内容之前的任何位置。
【讨论】:
header("MIME-Type: text/javascript"); 在您开始回显实际内容之前的任何位置。
从错误消息“资源解释为其他但传输的 MIME 类型未定义”看来,这似乎不是 javascript 问题。请使用一些浏览器扩展工具监控所有响应,检查服务器是否返回任何特殊资源或文件。
【讨论】: