为脚本标记一个ID
我遇到了一个script
元素的id
属性将轻松解决问题的情况。 然而,在阅读了w3schools和quirksmode的script
元素之后,似乎这样做可能会有一些无法预料的后果。
浏览器有没有人遇到过这些问题,比如Chrome,Safari,FF3和IE7?
目前所有的浏览器都没问题。
唯一一个得到<script id>
错误的浏览器是Netscape 4,很久很久以前我们就不再关心了。
这quirksmode页面似乎是严重过时了,它使用的language
属性,脚本<!--
隐藏和application/x-javascript
。 其关于避免<script>
<body>
<script>
build议(并将其放在<head>
)与今天鼓励的做法不一致。
如果我们正在谈论<script>
属性兼容性问题: defer
不能到处工作,所以不要依赖它; charset
在任何地方都无法正常工作,所提供的脚本的Content-Type上的charset参数也没有,所以你的脚本charset最好匹配页面; type
应该始终是text/javascript
而不是写作RFC 4329的学者会使用的非工作替代方法之一。
如果您仍然需要支持Netscape 4,那么您将遇到很多麻烦 – 以及开发者世界其余部分的遗憾和哀悼。
简单的答案,我不会担心。
我不认为浏览器会通过添加一个id
属性到script
元素有问题。
在我的一些网站上,通过JavaScript加载额外的JavaScript,我已经添加了一个class
属性,使其更容易引用。 validation者没有投诉。
我知道很长一段时间过去了,但是我认为很高兴指出,当你看看W3学校对脚本标签的定义时 ,你会发现在某些时候
该标签还支持HTML中的全局属性 。
在这些属性中,ta-da,你会发现你可爱的身份证。
对于很多标签也是如此,从帽子中拽出这些好玩的技巧,肯定会给我们很大的灵活性。
请记住,在任何元素上设置id
引入一个与id
属性具有相同名称的新全局variables: