js圓形環繞運動程式碼例項
分享一段程式碼例項,它實現了多個圓形環繞運動效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> * { margin: 0; padding: 0; } #box { width: 300px; height: 300px; border: 1px solid #000; margin: 100px auto; position: relative; top: 0; left: 0; border-radius: 50%; text-align: center; line-height: 300px; color: #000; font-size: 20px; } #box span { position: absolute; top: 0; left: 50%; margin-left: -25px; margin-top: -25px; width: 50px; height: 50px; background: red; border-radius: 50%; } </style> <script> function d2a(n){ return n*Math.PI/180; } window.onload=function(){ var oBox=document.getElementById("box"); var R=oBox.offsetWidth/2; var timer=null; var n=10; for(var i=0;i<n;i++){ var oSpan=document.createElement("span"); oBox.appendChild(oSpan); } var aS=oBox.children var off=true; oBox.onclick=function(){ if(off){ for(var i=0;i<aS.length;i++){ move(aS[i],360/n*i); } }else{ for(var i=0;i<aS.length;i++){ move(aS[i],0); } } off=!off; } function move(obj,iTarget){ var cont=Math.floor(700/30); var start=obj.a||0; var dis=iTarget-start; var m=0; clearInterval(obj.timer); obj.timer=setInterval(function(){ m++; var b=1-m/cont; var cur=start+dis*(1-Math.pow(b,3)); obj.a=cur; var x=R+Math.sin(d2a(cur))*R; var y=R-Math.cos(d2a(cur))*R; obj.style.left=x+"px"; obj.style.top=y+"px"; if(m==cont){ clearInterval(obj.timer) } },30) } } </script> </head> <body> <div id="box">點選</div> </body> </html>
相關文章
- css繪製圓形程式碼例項CSS
- canvas繪製圓形鐘錶程式碼例項Canvas
- JavaScript運動框架程式碼例項JavaScript框架
- CSS橢圓效果程式碼例項CSS
- JavaScript in運算子程式碼例項JavaScript
- CSS3星系運動效果程式碼例項CSSS3
- CSS3心形效果程式碼例項CSSS3
- JS 預編譯程式碼例項分析JS編譯
- CSS3梯形效果程式碼例項CSSS3
- jquery.idTabs.min.js選項卡程式碼例項jQueryJS
- 美化滾動條效果程式碼例項
- css3晃動效果程式碼例項CSSS3
- SVG拖動繪製矩形程式碼例項SVG
- CSS 線條環形動態運動效果CSS
- 利用白名單繞過360例項
- 運動員與教練例項
- dom操作程式碼例項
- css梯形程式碼例項CSS
- led驅動程式例項
- 動圖之一個圓繞另一個圓轉動
- CSS3圓形時鐘效果程式碼CSSS3
- CSS3圓環效果程式碼CSSS3
- 設計模式例項程式碼設計模式
- table表格美化程式碼例項
- JavaScript隨滑鼠晃動的div塊程式碼例項JavaScript
- 純css tab選項卡程式碼例項CSS
- jQuery tab選項卡效果程式碼例項jQuery
- html5 canvas 實現光線沿不規則路徑運動例項程式碼HTMLCanvas
- cluster例項運用
- canvas刮刮樂程式碼例項Canvas
- canvas載入效果程式碼例項Canvas
- CSS空心箭頭程式碼例項CSS
- jQuery.map()方法程式碼例項jQuery
- CSS條紋背景程式碼例項CSS
- flex居中佈局程式碼例項Flex
- JavaScript取餘數程式碼例項JavaScript
- canvas繪製扇形程式碼例項Canvas
- table細線表格例項程式碼
- CSS 隔行變色程式碼例項CSS