<STYLE>.spanstyle { COLOR: red; FONT-FAMILY: 宋体; FONT-SIZE: 20px; POSITION: absolute; } </STYLE> <script language=javascript> <!-- var textwidth=280 // 宽度 var textheight=40 // 高度 var message=new Array() // 定义数组 message[0]="<img src=0.gif>" message[1]="<img src=1.gif>" message[2]="<img src=2.gif>" message[3]="<img src=3.gif>" var x_finalpos=-1 var y_finalpos=50 // 上边距 var x_slices=50 // 速度 var y_slices=2 // 碎片的大小 var pause=10 // 时间延迟 var screenwidth=700 // 破碎屏幕宽度 var screenheight=400 // 破碎屏幕高度 var x_step=new Array() var y_step=new Array() var i_loop=0 var max_loop=24 var i_text=0 var width_slice=Math.floor(textwidth/x_slices) var height_slice=Math.floor(textheight/y_slices) var cliptop=0 //全局变量 var clipbottom=height_slice var clipleft=0 var clipright=width_slice var spancounter=0 function initiate() { if (x_finalpos==-1) { // 如果为-1位置居中 x_finalpos=Math.floor(document.body.clientWidth/2)-Math.floor(textwidth/2) } if (y_finalpos==-1) { // 如果为-1位置居中 y_finalpos=Math.floor(document.body.clientHeight/2)-Math.floor(textheight/2) } cliptop=0 //局部变量 clipbottom=height_slice clipleft=0 clipright=width_slice i_loop=0 spancounter=0 if (document.all) { // 如果是IE浏览器 for (i=0;i<=y_slices-1;i++) { for (ii=0;ii<=x_slices-1;ii++) { var thisspan=eval("document.all.span"+spancounter+".style") thisspan.posLeft=Math.ceil(screenwidth*Math.random()) // 文本左边距 thisspan.posTop=Math.ceil(screenheight*Math.random()) // 文本顶边距 thisspan.clip ="rect("+cliptop+" "+clipright+" "+clipbottom+" "+clipleft+")" // 显示文字任意部分 clipleft+=width_slice clipright+=width_slice spancounter++ } clipleft=0 clipright=width_slice cliptop+=height_slice clipbottom+=height_slice } } explode_IE() } function changetext() { spancounter=0 for (i=0;i<=y_slices-1;i++) { for (ii=0;ii<=x_slices-1;ii++) { var thisspan=eval("document.all.span"+spancounter+".style") // 所有文字 spancounter++ } } spancounter=0 if (i_text>message.length-1) {i_text=0} for (i=0;i<=y_slices-1;i++) { for (ii=0;ii<=x_slices-1;ii++) { var thisinnerspan=eval("span"+spancounter) thisinnerspan.innerHTML=message[i_text] // 显示数组中文字 spancounter++ } } i_text++ initiate() } function explode_IE() { spancounter=0 if (i_loop<=max_loop-1) { for (i=0;i<=y_slices-1;i++) { for (ii=0;ii<=x_slices-1;ii++) { var thisspan=eval("document.all.span"+spancounter+".style") x_step[spancounter]=(x_finalpos-thisspan.posLeft)/(max_loop-i_loop) // 文字显示的位置,左边距 y_step[spancounter]=(y_finalpos-thisspan.posTop)/(max_loop-i_loop) // 文字显示的位置,左边距 thisspan.posLeft+=x_step[spancounter] thisspan.posTop+=y_step[spancounter] spancounter++ } } i_loop++ var timer=setTimeout("explode_IE()",pause) // 设定定时器 } else { spancounter=0 clearTimeout(timer) // 清空定时器 var timer=setTimeout("changetext()",2000) // 设定定时器 } } if (document.all) { for (i=0;i<=y_slices-1;i++) { for (ii=0;ii<=x_slices-1;ii++) { document.write("<span id='span"+spancounter+"' class='spanstyle'></span>") spancounter++ } } spancounter=0 } // --> </SCRIPT> <body onload=changetext()> </body>