博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
水形文字
阅读量:4606 次
发布时间:2019-06-09

本文共 2218 字,大约阅读时间需要 7 分钟。

<HTML>

<HEAD>
<TITLE>水形文字</TITLE>
<STYLE>
  DIV {width: 609; font-size: 40pt; font-family: Tahoma;font-weight: bold;}
</STYLE>
<SCRIPT LANGUAGE="JavaScript">
var count=0; var thePhase=0; var aniOn=0;
var theStrength=0;var maxCount=40;var maxStrength=100;var theCount=0;
var colorList=new Array("red", "blue", "green");
var oDiv=null;
var oQueue=new Array();
function doStart(obj)
{
 oDiv=obj;
 oQueue.push("Welcome to 51js!");
 oQueue.push("Hello Friends!");
 oQueue.push("I love you");
 if(obj==null)return;
 if(!oQueue.length)return;
 oDiv.innerHTML=oQueue.shift();
 var ctrlRng=document.body.createControlRange()
 ctrlRng.add(oDiv)
 ctrlRng.select();
 ctrlRng.execCommand("SelectAll")
    theCount=0;
 doFilt();
}

function getStrength(pos)

{
 var ret=0
 if(pos<maxCount)
 {
  ret=maxStrength*pos*pos/(maxCount*maxCount);
 }
 else if(pos==maxCount)
 {
  strNext=oQueue.shift()
  oDiv.innerHTML=strNext;
  rndNum=Math.floor(Math.random() * 3)
  oDiv.style.filter+="glow(color=" +  colorList[rndNum] + ", strength=5)"
  ret=maxStrength;
 }
 else if(pos<2*maxCount)
 {
  pos=2*maxCount-pos;
  ret=maxStrength*pos*pos/(maxCount*maxCount);
 }
 else
  ret=0;
 ret=Math.ceil(ret)
 return ret;
}

function anitext(){

  thePhase=(thePhase + 10)
  oDiv.filters[0].phase=thePhase
  theStrength=getStrength(++theCount);
  window.status=theStrength
  if(theStrength==0)theCount=0;

  if(oQueue.length>0 || theStrength>0)

  {
    oDiv.filters[0].strength=theStrength;
    oTO=window.setTimeout("anitext()",0200,"JavaScript")
  }
}

http://tmscsy.sinaapp.com/

function doFilt(){

  oDiv.style.filter="wave(add=0, freq=3, lightstrength=50, phase=0, strength=2, enabled=1); "
  rndNum=Math.floor(Math.random() * 3)
  oDiv.style.filter+="glow(color=" +  colorList[rndNum] + ", strength=5)"
  anitext()
}

function removeFilt(){

  window.clearTimeout(oTO)
  oDiv.style.filter=" "
}

function arrPush(item)

{
 this[this.length]=item;
}

function arrShift()

{
 var item=this[0];
 var nLen=this.length;
 for(var i=0;i<nLen-1;i++)
  this[i]=this[i+1];
 this.length--;
 return item;
}

Array.prototype.push=arrPush;

Array.prototype.shift=arrShift;

</SCRIPT>

</HEAD>
<BODY οnlοad="doStart(MyDiv)">
<DIV ID="MyDiv" align="center">
</DIV>
</BODY>
</HTML>

本代码由<a href=>网页特效网</a>提供

转载于:https://www.cnblogs.com/tmscnz/archive/2012/12/30/2839687.html

你可能感兴趣的文章
VTK删除vtkPolyData中的顶点和面片
查看>>
ios美颜 调研 GPUImage GPUImageBeautifyFilter BeautifyFaceDemo
查看>>
Linux查看可执行程序所在路径
查看>>
java学习笔记
查看>>
51Nod 1097 拼成最小的数(字符串的排序)
查看>>
网络协议
查看>>
Unity3D(C#)连接SQL Server2008
查看>>
快速排序
查看>>
51Nod 1094 和为k的连续区间
查看>>
AFNetworking 使用
查看>>
光盘文件的挂载和yum源配置
查看>>
The source attachment does not contain the source for the file SignatureParser.class错误
查看>>
解决前后端工程师协同工作的问题
查看>>
我的博客开张了
查看>>
第三节、矩阵乘法
查看>>
asp.net core学习
查看>>
LeetCode:165. 比较版本号
查看>>
JavaScript丨数组元素反转
查看>>
一维数组计算最大子数组并且能进行步骤可视化
查看>>
C#语法——委托,架构的血液
查看>>