JS完成畫(huà)圓圈的小球
效果圖
圖(1)
圖(2)
代碼如下:
<html> <head> <title>JS動(dòng)畫(huà)之轉(zhuǎn)動(dòng)的小球</title> <style type="text/css"> div{width:20px;height:20px;background-color:black;position:absolute;border:1px solid red;border-radius:50%;} </style> </head> <body> <div id="box"></div> <script type="text/javascript"> var box=document.getElementById('box'); box.style.left="600"; box.style.top="300px"; var n=0; //正弦函數(shù)的橫坐標(biāo),理解為時(shí)間軸好一點(diǎn)。 function rotation() { box.style.left=(600-Math.sin(1/180)*80)+Math.sin(n/180)*80+"px"; //300是小球的沒(méi)開(kāi)始運(yùn)動(dòng)的初始位置,n表示時(shí)間軸,后邊是除數(shù)是為了將時(shí)間細(xì)分,使運(yùn)動(dòng)更平滑,80表示半徑。 box.style.top=(300-Math.cos(1/180)*80)+Math.cos(n/180)*80+"px"; //第一個(gè)括號(hào)中的內(nèi)容是為了讓小球在開(kāi)始運(yùn)動(dòng)時(shí)處于初始位置(300,300) var dr = document.createElement('div'); dr.style.left=(600-Math.sin(1/180)*80)+Math.sin(n/180)*80+"px"; dr.style.top=(300-Math.cos(1/180)*80)+Math.cos(n/180)*80+"px"; document.body.appendChild(dr); n++; if(n>180*2*Math.PI)return false; // 0 到 2π 為一個(gè)轉(zhuǎn)動(dòng)周期,如果要半圓,只需將n的取值范圍減半,如需反方向轉(zhuǎn)動(dòng),調(diào)換left和top的值即可。 setTimeout(rotation,1); } rotation(); </script> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- JS實(shí)現(xiàn)小球的彈性碰撞效果
- JavaScript反彈動(dòng)畫(huà)效果的實(shí)現(xiàn)代碼
- js實(shí)現(xiàn)簡(jiǎn)單的碰壁反彈效果
- Js實(shí)現(xiàn)簡(jiǎn)單的小球運(yùn)動(dòng)特效
- 用js實(shí)現(xiàn)小球的自由移動(dòng)代碼
- javascript動(dòng)畫(huà)之圓形運(yùn)動(dòng),環(huán)繞鼠標(biāo)運(yùn)動(dòng)作小球
- JS小球拋物線(xiàn)軌跡運(yùn)動(dòng)的兩種實(shí)現(xiàn)方法詳解
- JS實(shí)現(xiàn)碰撞檢測(cè)的方法分析
- JS實(shí)現(xiàn)簡(jiǎn)單的浮動(dòng)碰撞效果示例
- 原生JS實(shí)現(xiàn)多個(gè)小球碰撞反彈效果示例
相關(guān)文章
JS實(shí)現(xiàn)簡(jiǎn)單tab選項(xiàng)卡切換
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)簡(jiǎn)單tab選項(xiàng)卡切換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10全面解析Bootstrap中scrollspy(滾動(dòng)監(jiān)聽(tīng))的使用方法
這篇文章主要為大家全面解析Bootstrap中scrollspy(滾動(dòng)偵聽(tīng))的使用方法,感興趣的小伙伴們可以參考一下2016-06-06JS 實(shí)現(xiàn)隨機(jī)驗(yàn)證碼功能
驗(yàn)證碼驗(yàn)證是網(wǎng)頁(yè)常出現(xiàn)的一個(gè)驗(yàn)證點(diǎn),所謂驗(yàn)證碼類(lèi)型有很多,下面代碼只是實(shí)現(xiàn)一個(gè)簡(jiǎn)單的驗(yàn)證功能,需要的朋友參考下2017-02-02用Javascript評(píng)估用戶(hù)輸入密碼的強(qiáng)度(Knockout版)
早上看到博友6點(diǎn)多發(fā)的一篇關(guān)于密碼強(qiáng)度的文章(連接),甚是感動(dòng)(周末大早上還來(lái)發(fā)文)2011-11-11將html頁(yè)面保存成圖片,圖片寫(xiě)入pdf的實(shí)現(xiàn)方法(推薦)
下面小編就為大家?guī)?lái)一篇將html頁(yè)面保存成圖片,圖片寫(xiě)入pdf的實(shí)現(xiàn)方法(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09js跳轉(zhuǎn)頁(yè)面方法實(shí)現(xiàn)匯總
js跳轉(zhuǎn)頁(yè)面的方法有很多,本文搜集整理了一些,個(gè)人感覺(jué)還不錯(cuò),希望對(duì)大家有所幫助2014-02-02js focus不起作用的解決方法(主要是因?yàn)閐om元素是否加載完成)
js focus不起作用的解決方法(主要是因?yàn)閐om元素是否加載完成)2010-11-11