考虑以下代码:
<script type="text/javascript" src="some.js"></script>
<script type="text/javascript" src="some2.js"></script>
<script type="text/javascript">
var scripts = document.getElementsByTagName("script");
for (i=0;i<scripts.length;i++){
if(scripts[i].src=="some.js") {
scripts[i].src = "somechanged.js";
}
}
</script>
<script type="text/javascript" src="some.js"></script>
我不知道为什么if
无效。如果您使用//注释它是否适用于所有已读取的脚本src。我尝试了一些技巧,例如toLowerCase()
和/或valueOf()
,但都没有效果。
我将if更改为if(1==1)
,当然可以。
我在字符串比较中做错了什么?
此致
答案 0 :(得分:1)
添加评论作为与您的请求相同的答案。
src
属性是绝对URL。这在规范中指定。
您希望将其设置为实际的属性,而不是DOM实际用于获取它的属性。
如果您想要HTML中的属性,可以使用scripts[i].getAttribute("src")
来返回正确的值。