问题描述
<script>var str=" 欢迎光临本站!"function titleMove(){ str=str.substring(1,str.length)+str.substring(0,1);document.title=str;status=str;}document.write(str.length);if(str.length>20)str=" 欢迎光临本站!";setInterval("titleMove()",100);</script> 在这句str=str.substring(1,str.length)+str.substring(0,1); 语句中,如果改为str=str.substring(1,str.length);状态栏就不是一直滚动的状态了,请帮忙解释一下原因,我这句没看太懂!
解决方案
首先这是一个定时业务...没100秒执行一次titleMove()方法(这个你貌似明白) str=str.substring(1,str.length)+str.substring(0,1); 意思就是我每次都把str的第一个字符我放到str的后面去...比如 "欢迎光临本站!" 执行一次之后就是"迎光临本站!欢".... 一直运行就会看见滚动效果 str=str.substring(1,str.length) 单纯的截取字符串,循环几次都截取没了...
解决方案二:
str=str.substring(1,str.length)+str.substring(0,1);把第一个字符放到字符串的尾部。字符串的长度不变。所以,能看见循环。str=str.substring(1,str.length);字符串的长度会变为0。也就是一个""这个样的字符串了,所以,就什么都看不见了。