打字机效果显示的JavaScript(终于分析完了)

终于分析完了,虽然不是很长,但是因为初次接触JAVASCRIPT,要学他的东西,虽然还有一点不是很理解,但基本都懂了,现在也感冒了,觉得头好痛啊~~不该吹空调的~~

写到head里的SCRIPT:

<script language=javascript>
var layers =document.layer;
var style=document.all;
var both=layers||style;

function writeOnText(obj,str)
{
 if(layers)with(document[obj])
  {
    //document.open(); 似乎要不要都可以
    document.write(str);
    //document.close(); 似乎要不要都可以
  }
 if(style)
  {
   eval(obj+'.innerHTML=str');
  }
}
  
var dispStr = new Array("<b>&nbsp;中南大学升华网</b>");  //要显示的字段

function txtTyper(str,idx,idObj,spObj,clr1,clr2,delay,plysnd)
{
 var tmp0=tmp1= '';
 var skip=100;
 if (both && idx<=str.length) //检查是否有承载SCRIPT的容器
 {
  if (str.charAt(idx)=='<')
  {
   while(str.charAt(idx-1)!='>') idx++; //检测是否加有HTML标签
  }
  if (str.charAt(idx)=='&' && str.charAt(idx+1)!=' ')
  {
   while (str.charAt(idx-1)!= ';')idx++; //检测是否加有HTML字符,如&nbsp;
  }
  tmp0 = str.slice(0,idx); //slice:从位置0读取字符串到位置idx,有点象SCRIPT里的subString
  tmp1 = str.charAt(idx++);

writeOnText(idObj, "<font color='"+clr1+"'>"+tmp0+"</font><font color='"+clr2+"'>"+tmp1+"</font>"); //写到屏幕


 setTimeout("txtTyper('"+str+"', "+idx+", '"+idObj+"', '"+spObj+"', '"+clr1+"', '"+clr2+"', "+delay+" ,"+plysnd+")",delay);  //重复调用,显示完所有文字
 } 
}


function init()
{
 txtTyper(dispStr[0], 0, 'ttl0', 'ttl1', '#ff6600', '#ffffff', 300, 0);
 //setTimeout("init()",5000);  //我自己加的,每隔五秒重复一次;
}
</script>

<BODY οnlοad=init()>
<!-- DIV class=ttl1 id=ttl0></DIV-->  //如果是用层,则指出它的ID
<table width="600" border="0" cellspacing="0" cellpadding="0"  >
  <tr>
  <td width="83" bgcolor="#99FF33" class="ttl1">打印效果</td>
    <td width="517" bgcolor="#99FF33"  id = "ttl0" class="ttl1"></td> //如果是table,指定显示单元格的ID
  </tr>
</table>
</BODY>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值