爱易网
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 浏览次数:20232 次
以下是程序代码
<!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新浪微博新鲜事滚动特效代码
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
欧盟控诉苹果在爱尔兰非法进行税收交易
靠谱分析:6月发生的WWDC和谷歌I/O大会,将会出现哪些新产品?
银河证券王锦炎:金融业如何使用大数据
CSS控制字符长度和显示长度
美国电影协会在华起诉迅雷侵权 要求赔偿并道歉
分析称iPhone 6明年初发布 屏幕变为4.8吋
八位知名设计师评iOS7:新鲜但复杂
高通拼抢国际芯片市场 联发科海外拓展难安心
电信设备商淘金中国4G:华为中兴领衔
推荐阅读
更多>
中移动推动感地带3G网聊卡 火拼微信沃卡
这一次,微软将带给我们什么惊喜?
2018年阿里云双11活动如何参加?1折优惠大攻略
索尼移动中国区陷裁员风波:业务不佳 员工焦虑
央行暂停二维码支付及虚拟信用卡 支付宝微信不知情
易迅大众点评缩水执行“七天后悔权”被约谈
HDS发布《2013中国CIO洞察白皮书》
苹果CEO抱歉解读:是战略而非“屈服”
曝阿里巴巴一怀孕员工过劳死 加班情况引争议
2013年至今中国互联网行业十大并购案汇总
iPhone 6将于10月17日内地上市:售5288元起
云储存有多远:跨过数据安全问题即可到达
中电信率先推移动转售业务 中下旬批量上市
传360周鸿祎曾试图阻止百度收购91无线
中移动“重启”自有品牌手机成败难料
FDD牌照12月将发放 联通电信双4G反击中移动
阿朗力避步北电后尘 急切停止自我革新
雷军收买腾讯金山股份:持股比例升至27%
地图导航骤起杀机 百度高德重新定义商业模式
中国首台比特币ATM登陆上海 可购买不可兑换现钞