把innerHTML项赋值为什么不行?
<script>
var ob=document.getElementsByTagName("li");
for(var i=0;i<ob.length;i++){
ob[i].innerHTML="第"+(i+1)+"名:"+ob[i].innerHTML;
if(i%2==0) ob[i].className="red";
}
</script>
这样没问题,但是改成
<script>
var ob=document.getElementsByTagName("li");
for(var i=0;i<ob.length;i++){
var obIn=ob[i].innerHTML;
obIn="第"+(i+1)+"名:"+obIn;
if(i%2==0) ob[i].className="red";
}
</script>
就出现问题,不会出现“第i名:”,请问是什么原因。
正在回答
仔细看看是不是少了这个 ob[i].innerHTML=……
<script> //补充代码 var ob=document.getElementsByTagName("li"); for(var i=0;i<ob.length;i++){ var obIn=ob[i].innerHTML; obIn="第"+(i+1)+"名:"+obIn; document.write(obIn+"<br>"); if(i%2==0) ob[i].className="red"; } </script>
你加一句
document.write(obIn+"<br>");
就知道了,你的操作是对obIn这个变量做的,因为你只是把ob[i]的值赋给了obIn,并不会影响ob[i]这个变量的变化,而网页中显示的确实ob[i]的内容,所以没有变化
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星