风舞残阳 2008-4-1 11:21
状态栏与title栏的特效显示详解
现在在IE的Title和状态栏上作"秀"的网页真是越来越多了,而且有时的效果真的是很不错的,其实一般这种特效相对还是比较简单的,要自己动手做一个也不会很难的,下面我选了个还算复杂的效果为大家作一个详细的解释,相信你仔细看过以后一定会觉得非常有收获的,好了,不多废话了,快跟我来吧...
下面是一个很酷的例子解释(效果显示分别在状态栏和title栏):
%26lt;scriptlanguage="JavaScript"%26gt;
%26lt;!--
varcurrent=0//设置一个参数的值为0,后面会调用
varx=0//设置一个参数的值为0,后面会调用
varspeed=200//设置一个[wiki]速度[/wiki]参数值
varspeed2=5000//再设置一个速度参数值
functioninitArray(n){//设置一个数组函数
this.length=n;
for(vari=1;i%26lt;=n;i++){
this[i]=''//一个个显示数组内容
}
}
action=newinitArray(4)//设置具体的数组
action[0]="黃河远上白云间,一片孤城万仞山,羌笛何须怨杨柳,春风不度玉门关!"
action[1]="闺中少妇不之愁,春日凝妆上翠楼,忽见陌头杨柳色,悔教夫婿觅封侯!"
action[2]="秦时明月汉秦关,万里长征人未还,但使龙城飞将在,不教胡马渡阴山!"
action[3]="葡萄美酒夜光杯,欲饮琵琶马上催,醉臥沙场君莫笑,古来征战几人回!"
functionaction2(){//设置一个显示字符的函数
varm=action[current]//调用上面的参数,即为显示action[0],把它的值给m
document.title=m.charAt(x++)//一个个显示字符,x的原值为0,这是显示在title的情况
if(x==m.length+1){
x=0//如果一组数组显示完成后,x的值重新设为0
current++//同时current值增加1
window.status=m//显示一下这时的m,即整个数组的字符内容,这个内容显示在状态栏上
if(current%26gt;action.length-1){
current=0//数组全部显示完毕后,再重新设current为0,显示重新开始
}
setTimeout("action2()",speed2)
}//设置函数运行的间隔时间,这是数组间显示的间隔时间,与上面第二个IF值对应
else{
setTimeout("action2()",speed)
}//设置函数运行的间隔时间,这是数组中一个个字符显示的间隔时间,与上面的不同,这也是设置两个时间的原因
}
action2()//启动函数
//--%26gt;
%26lt;/script%26gt;
心得:其实要把内容显示在状态栏上还是Title上是非常自由的,甚至两者的内容可以互换的,也就是一个显示参数的区别而已,它们是:window.status和document.title,明白了这点,现在你自己动手可做的内容又多了许多吧,有兴趣赶快换几个效果看看,到时你也会很有成就感的...:)