浅谈JS之text/javascript和application/javascript
问题描述:
JS在IE8以下浏览器运行异常
代码:
<script>标签是这样子写的:
<script type="application/javascript"> //执行语句 </script>
这是书写的时候Dreamweaver自动补全的。但是在自己运行的例子中我的script标签写的是:
<script type="text/javascript"> //执行语句 </script>
将项目中的标签type属性修改成了text-javascript,然后,然后在IE8一下就可以运行了。
拓展:
最实用的用法,现在各大浏览器已经都基本上支持了HTML5,HTML5中我们已经可以直接使用<script></script>而不需要制定script标签的type属性了。
根据内核属性,我们将浏览器分为四类:IE6/7/8/9/10/11,firefox, chrome/safari, opera.
如果需要在script标签中添加type属性,一般type有下面几种:
1.text/javascript:这是目前来说次于<script></script>标签的最合适的type属性 2.application/javascript:这个属性亲测在IE8以下的浏览器中无法被识别。 3.language="javascript":这个标签是W3C的HTML标准,但是目前已经不再推荐使用。 4. text/ecmascript:少用 5. text/jscript:少用 6.text/vbscript:少用
小结:
(1)实际上这两种没什么大区别,只是不同浏览器的支持不一样
(2)在 HTML5 标准中,可以直接写 `<script>...</script>`,浏览器默认这个“script”是 ECMAScript
(3)如果页面上使用<script type="application/javascript" src="...."></script>。ie6、7、8都是没法识别里面的js语句的。必须在页面上使用<script type="text/javascript" src="...."></script>才有效
.