爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
JS特效
利用js实现div画椭圆曲线运动特效代码
利用js实现div画椭圆曲线运动特效代码
日期:2014-05-18 浏览次数:20258 次
以下是程序代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <meta charset=gbk> <title>椭圆曲线</title> </head> <style> *{ margin:0px;padding:0px; } div{ border:1px solid #111; } .points{ width:1px;height:1px;border:0px solid #111; position:absolute; line-height:1px;font-size:1px; background:#111; } .go-oval{ width:10px;height:10px;border:0px solid #111; position:absolute; line-height:1px;font-size:1px; background:#111; border-radius:5px; } </style> <body> <div style="position:absolute;left:80px;top:30px;height:500px;width:500px;"> <div id="tuoyuan1" style="height:500px;width:500px;"></div> <div id="go-oval1" class="go-oval"></div> </div> <div style="position:absolute;left:800px;top:130px;height:500px;width:900px;"> <div id="tuoyuan2" style="height:500px;width:900px;"></div> <div id="go-oval2" class="go-oval"></div> </div> </body> </html> <script> (function(){ function $(idd){ var obj = {}; if( typeof( idd ) === 'string'){ var idName = idd.substr(1, idd.length ); //alert(idName) if( idd.substr(0,1) === '#' ){ obj = document.getElementById(idName); } else if( idd.substr(0,1) === '.'){ obj = document.getElementsByName(idName); //obj = obj.length ? document.getElementsByClassName(idName) : null; //alert(obj.length); //alert( obj[0].className ) } else if( idd == 'document' ){ obj = document; } else { obj = document.getElementsByTagName(idd); //alert(idd) } } else { obj = idd; } return obj; } //alert(document.body.clientWidth ) //生成椭圆曲线的点(数组) function make_points(a, b, interval, addX, addY){ var x,y; var xy = [],xy1 = [],xy2 = []; addX = addX ? addX : a; addY = addY ? addY : b; x = - Math.sqrt( (b*b)*a*a/(b*b) ); for(var n = 0; 1; n ++){ y = Math.sqrt( b*b - (b*b*x*x)/(a*a) ); if( n == 0 ){ y0 = y; } xy1[n] = [x + addX,y + addY]; //n++; xy2[n] = [x + addX,-y + addY]; x = x + interval; if( x > Math.sqrt( (b*b)*a*a/(b*b) ) ){ break; } } //xy2倒序 /* xy2 = xy2.sort(function(x,y){ return x == y ? 0 : (x > y ? -1 : 1); }); */ for(var n = 0, n2 = len = xy2.length - 1 ; n <= len; n ++, n2--){ xy[n] = xy2[n2]; } xy = xy1.concat(xy); return xy; } //画椭圆曲线 function draw_oval(points){ var len = points.length; var divs = ''; for(var n = 0; n < len; n ++){ divs += '<div class="points" style="left:'+ points[n][0] +'px;top:'+ points[n][1] +'px;"></div>'; } return divs; } //沿着曲线跑动 function go_oval(idd,points, n, t, addX, addY){ var len = points.length; n = n ? n : 0; t = t ? t : 10; addX = addX ? addX : 0; addY = addY ? addY : 0; var $obj = $(idd).style; $obj.left = points[n][0] + addX + 'px'; $obj.top = points[n][1] + addY + 'px'; n ++; n = n == len ? 0 : n; setTimeout(function(){ go_oval(idd, points, n, t, addX, addY); },t); } window.onload = function(){ var points1 = make_points(50,100,1,200,200); var points2 = make_points(200,100,1); //画椭圆曲线 $('#tuoyuan1').innerHTML = draw_oval( points1 ); $('#tuoyuan2').innerHTML = draw_oval( points2 ); //alert( make_points(200,100,3) ) //小点在曲线上跑动 go_oval('#go-oval1',points1,0,10 ,-5,-5); g
上一篇:狡猾的按钮特效
下一篇:JQuery实现仿sina新浪微博新鲜事滚动特效代码
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
小米移动芯片:英伟达退出,终会加强与联发科合作
Kindle入华遭遇国内厂商“围剿 ” 电信也参战
支付宝服务窗后台首曝光 开放用户消费数据
安全服务机构:公布2014年度最糟糕的25个密码
Skype周年:与微软联姻到底有没有未来?
挂号网高管团体离任 或因投资人失掉决计
在线音乐出现“小米公司”不是没有可能
戴尔正告继续上市存风险 称黑石伊坎方案有缺乏
百度吴恩达:图像和音视频搜索是人工智能新方向
推荐阅读
更多>
阿里国际化再落子:2.49亿美元投资新加坡邮政
FDD牌照12月将发放 联通电信双4G反击中移动
刘强东向总理建言:打击有组织有规模的售假商家
盛大游戏走向衰落的根源:免费游戏模式惹的祸
微软最后的救命稻草Win 8份额继续上升
云储存有多远:跨过数据安全问题即可到达
中移动将推出多项4G资费新政
中国手游总裁及8名高管集体下岗,被指涉不当交易
中电信国际漫游费下调85% 世界杯上网28元/天
英特尔VS苹果:移动芯片大战
腾讯为何在与阿里百度的收购比赛中当看客?
摩托罗拉中国区将再裁员 助力公司变身
2018年阿里云双11活动如何参加?1折优惠大攻略
据消息传百度将要控股携程 整合去哪儿
打车软件竞争白热化:有冷兵器时代意味
柳传志马云陷舆论漩涡:请不要辜负这个时代
国内云服务商存在尴尬:“远程机房+移动大硬盘”模式
2019双12阿里云老用户怎么参加拼团活动 老用户拼团方法
史玉柱卸任巨人网络CEO 继位人选引猜想
众贷网满月开张 网络金融监管再受质疑