IE8是否需要脚本类型text/javascript?
我正在调试IE8上的Javascript问题,我想确保问题不是因为这个。我不太清楚问题是因为这个还是其他原因。我在整个互联网上搜索,但我觉得很难得到一个非常简单的答案。即使是w3school(人们说它不可靠),通常有“哪个浏览器支持从哪个版本开始的功能”也会删除此脚本标记的信息。我知道在堆栈溢出问题上有很多类似的问题,询问是否可以在脚本上省略type属性,通常的答案是肯定的。但是客户决定网站也必须支持IE8,这就是为什么我需要一个简单明了的答案: 我可以省略IE8上脚本标记上的type属性吗 如果我省略它,它会有问题吗,比如引发Javascript错误框,代码不能正常运行,或者在IE8上出现任何问题IE8是否需要脚本类型text/javascript?,javascript,internet-explorer-8,Javascript,Internet Explorer 8,我正在调试IE8上的Javascript问题,我想确保问题不是因为这个。我不太清楚问题是因为这个还是其他原因。我在整个互联网上搜索,但我觉得很难得到一个非常简单的答案。即使是w3school(人们说它不可靠),通常有“哪个浏览器支持从哪个版本开始的功能”也会删除此脚本标记的信息。我知道在堆栈溢出问题上有很多类似的问题,询问是否可以在脚本上省略type属性,通常的答案是肯定的。但是客户决定网站也必须支持IE8,这就是为什么我需要一个简单明了的答案: 我可以省略IE8上脚本标记上的type属性吗 如
谢谢。如果您使用HTML5并传递正确的doctype,则type属性是可选的
<!doctype html>
不幸的是,IE8无法识别此doctype,因此理论上它应该需要指定的type属性。幸运的是,没有人遵循特定的标准,因此运行此代码
<!doctype html>
<html>
<head>
<script>
alert('It works!');
</script>
</head>
<body></body>
</html>
警惕(“它工作!”);
导致JS在IE8下工作,这意味着您根本不需要指定的type属性。希望有帮助。任何地方都不需要。除非您指定了属性并选择了不正确的值,否则它应该可以工作。可能是另一篇文章中的@Jeremy的重复,它说它在HTML 4中是必需的,其中包括IE 8。但是,我认为,只要文件不是
.xhtml
,大多数浏览器都会默认使用javascript。它可能是规范所要求的,但w3c的规范从来没有很好地符合实际情况。@ps2goat是的,这就是我的意思。他们只讨论HTML4规范,而不讨论IE8(实际上运行HTML4规范)是否受其影响。但别担心,已经有解决办法了。谢谢在实践中,我认为type属性在很长一段时间内都是不必要的,即使严格要求符合HTML4。至少在一个非常罕见的情况下,在早期版本的IE中,VBScript以前在页面中使用过,这是必要的。但不要引用我的话此外,type属性可用于针对指定版本的JS,如:仅当浏览器支持JS 1.8时,它才会运行脚本。谢谢!现在,我可以不再担心是否所有这些错误都是由于type属性不存在而产生的,因为很遗憾,我无法改变这一点。许多问题和答案只是围绕HTML4规范进行讨论,而不是直接讨论IE8(使用HTML4规范)是否需要它。别担心,我只对IE8感兴趣,而不是更早的版本。多谢各位@metal03326您对此有参考资料吗?类型(如果存在)必须为。添加版本信息似乎会阻止脚本在除Firefox以外的任何浏览器中执行(可能是因为MIME类型无法识别),因此这似乎是一个仅在Mozilla浏览器中可用的专有扩展。@RobG Firefox显然支持此功能,不知道其他浏览器