为什么不承认IE8在脚本标签类型=“应用程序/ JavaScript的”?为什么不承认IE8在脚本标

2019-05-12 05:28发布

我开发了一个使用jQuery和Ajax的HTML页面。 我在我的下面几行<head>标签:

<script language="javascript" type="application/javascript" src="script/jquery.js"></script>
<script language="javascript" type="application/javascript">
    function someFunction() {
        some code;
    }
</script>
    ...

  later - down in the body tag:
<a href="javascript:someFunction();">click here</a>

它的工作完全在FF和Chrome,但扔只要我点击了链接在IE8中的“预期目标”。 即使脚本调试程序上,就不会达到该函数的第一行。
我试图切换到IE7模式,或IE8兼容性模式 - 无济于事。

我运气好,找到一个问题,通过谷歌,其中有人建议更改type<script>标记"text/javascript" ,现在它在所有3个浏览器上运行。

我的问题是:我做了什么错? 是"text/javascript"优于"application/javascript" ,或者是有没有更好的(==更正确)解决我的问题?

Answer 1:

“文/ JavaScript的”是由所有三个浏览器支持的唯一类型。 但是,你实际上并不需要把一个类型。 脚本标签的类型属性将默认为“text / JavaScript的”如果不另有规定的。 如何会影响验证,我不知道。 但真正重要的呢?



Answer 2:

简单的答案是,IE不支持应用程序/ JavaScript的类型值。 其中建议IE6发布后它显然来了RFC 4329,我猜MS开发商并没有觉得有必要甚至支持的MIME类型。



文章来源: Why doesn't IE8 recognize type=“application/javascript” in a script tag?