当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Vml:应用阿基米德算法在网页制作动画,原程+注释

Javascript
用jquery ajax获取网站Alexa排名的代码
jQuery Selectors(选择器)的使用(九、表单对象属性篇)
javascript 数组使用方法汇总
用于CSS代码压缩与格式化的javascript函数代码
ExtJS下grid的一些属性说明
javascript 强制刷新页面的实现代码
js 加载并解析XML字符串的代码
jquery提示 "object expected"的解决方法
页面中iframe相互传值传参
jQuery 行背景颜色的交替显示(隔行变色)实现代码
魔方在线秒表javascript版
JavaScript 字符串与数组转换函数[不用split与join]
javascript与asp.net(c#)互相调用方法
javascript下搜索子字符串的的实现代码(脚本之家修正版)
JQuery下关于$.Ready()的分析
input 日期选择功能的javascript代码
js 页面传参数时 参数值含特殊字符的问题
读取table内容的javascript代码
最简单的javascript对象实例代码
JQuery Tips(2) 关于$()包装集你不知道的

Javascript 中的 Vml:应用阿基米德算法在网页制作动画,原程+注释


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 504 ::
收藏到网摘: n/a

<HTML xmlns:v>
<HEAD>
<META http-equiv='Content-Type' content='text/html;charset=gb2312'>
<Meta name='Gemeratpr' content='网络程序员伴侣(Lshdic)2004'>
<TITLE>网页标题</TITLE>
<STYLE>
v\:*{behavior:url(#default#VML);}  //声明变量v为VML对象
*{font-size:12px;color:;}
a{text-decoration:none;}
a:hover{color:red;}
</STYLE>
</HEAD>
<BODY topmargin='2' leftmargin='2'>
<BASE target='_top'>
<div id=a style='table-Layout:fixed;width:100%;height:100%;border:1 solid black'></div>
<script>
 //原作:风云舞,载自:http://www.lshdic.com/bbs
 //以前在VB里很容易利用阿基米德绘图,这次是DHTML版的,VB的下载来http://image.chinaitpower.com/files/20030817/10068.rar
var pos1=0,cos1=0,sin1=0,buchang=1,line1,wid1,hei1,color1  //定义全局变量,为提高运行速度
wid1=a.offsetWidth/2
hei1=a.offsetHeight/2  //预装载宽与高,为提高运行速度
function add1(){
if(pos1==0){buchang=Math.round(Math.random()*5)+1;color1="rgb("+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+","+Math.round(Math.random()*255)+")"}    //初始化时,定义一个随机步长,为达到各种效果
if(pos1<200)pos1+=buchang;else{pos1=0;a.innerHTML="";line1=null;wid1=a.offsetWidth/2;hei1=a.offsetHeight/2}  //递加或者初始化
var line1=document.createElement('V:LINE')   //创建一条新线段
line1.style.position='absolute'
line1.style.left=wid1
line1.style.top=hei1
line1.strokecolor=color1
line1.to=pos1*Math.cos(pos1)+","+pos1*Math.sin(pos1)  //应用阿基米德算法,产生规则角度的线段
a.appendChild(line1);document.title=pos1;             //OK,增加线段
}
setInterval('add1();',30)   //30毫秒增加一次,注意30毫秒如果超过30条线以上,低于30毫秒对于使用低CPU处理器用户吃不消
</script>
</BODY>
</HTML>