JS運(yùn)動相關(guān)知識點(diǎn)小結(jié)(附彈性運(yùn)動示例)
本文總結(jié)了JS運(yùn)動相關(guān)知識點(diǎn)。分享給大家供大家參考,具體如下:
1.多物體運(yùn)動框架所有東西都不能共用
2.document.title輸出頻率不能太高
3.在寫JS時盡量避免寫小數(shù),因為計算機(jī)內(nèi)部都是模擬的,而不是實際存儲的
如:0.07*100 在JS運(yùn)算里不是為7
var a=3; var b=3.00000000000000000001; alert(a=b);
輸出的結(jié)果卻是true
4.寫程序思考時先思考一般,再思考特殊,寫程序是,先排除特殊,然后寫一般
if(特殊1) {} else if(特殊2) {} else { 一般 }
5.數(shù)組既可以用for 循環(huán)也可以用for..in循環(huán),因為for循環(huán)比較可控 ,所以用for循環(huán)會比較的好
對象(json)的話只能用for..in循環(huán)
6.在CSS中*{margin:0;padding:0;}這樣寫性能并不怎么好
7.布局轉(zhuǎn)換,先給每個元素設(shè)置left,top值 ,,全部設(shè)置好了以后再 給每個元素position設(shè)置absolute 并且margin清零
8.IE7中用UL進(jìn)行運(yùn)動時會頓卡,這時候可以用DIV試試看
9.考慮摩擦力因素 iSpeed*0.95(小數(shù)的大小取決于摩擦力的大小)
10. 加速度,離目標(biāo)越遠(yuǎn)加速度越大 離目標(biāo)越近越?。╥Target-obj.offsetLeft)/50
11.加速度和摩擦力比較好的組合是5和0.7 即iSpeed+=(iTarget-obj.offsetLeft)/5 ; iSpeed*=0.7;
12.當(dāng)程序出問題的時候,思考為什么會出現(xiàn)這個問題
13.彈性運(yùn)動在樣式不能過界的時候不能用
14.彈性運(yùn)動停止條件:距離過近 速度過小
15.分析要圍觀分析,因為樣式會自動的忽略小數(shù),因此,為了不讓丟失的小數(shù)積少成多,可以設(shè)置一個變量來存儲,然后賦給樣式。 obj.style.left=left+"px";
附:JavaScript彈性運(yùn)動實例
運(yùn)動原理:加速運(yùn)動+減速運(yùn)動+摩擦運(yùn)動;
代碼如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>無標(biāo)題文檔</title> <style> #div1{ width:100px; height:100px; background:red; position:absolute; left:0; top:50px;} </style> <script> window.onload = function() { var oBtn = document.getElementById('btn1'); var oDiv = document.getElementById('div1'); oBtn.onclick = function() { startMove(oDiv, 300); }; }; var iSpeed = 0; var left = 0; function startMove(obj, iTarget) { clearInterval(obj.timer); obj.timer = setInterval(function(){ iSpeed += (iTarget - obj.offsetLeft)/5; iSpeed *= 0.7; left += iSpeed; if(Math.abs(iSpeed)<1 && Math.abs(left-iTarget)<1){ clearInterval(obj.timer); obj.style.left = iTarget + 'px'; }else{ obj.style.left = obj.offsetLeft + iSpeed + 'px'; } }, 30); } </script> </head> <body> <input id="btn1" type="button" value="運(yùn)動" /> <div id="div1"></div> <div style="width:1px; height:300px; background:black; position:absolute; top:0; left:300px; "> </div> </body> </html>
更多關(guān)于JavaScript運(yùn)動效果相關(guān)內(nèi)容可查看本站專題:《JavaScript運(yùn)動效果與技巧匯總》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
- JS彈性運(yùn)動實現(xiàn)方法分析
- javascript彈性運(yùn)動效果簡單實現(xiàn)方法
- JavaScript拖拽、碰撞、重力及彈性運(yùn)動實例分析
- 純js模擬div層彈性運(yùn)動的方法
- JS實現(xiàn)選中當(dāng)前菜單后高亮顯示的導(dǎo)航條效果
- JS+CSS實現(xiàn)鼠標(biāo)滑過時動態(tài)翻滾的導(dǎo)航條效果
- CSS3+Js實現(xiàn)響應(yīng)式導(dǎo)航條
- javascript實現(xiàn)的鼠標(biāo)懸停時動態(tài)翻滾的導(dǎo)航條
- 仿客齊集首頁導(dǎo)航條DIV+CSS+JS [代碼實例]
- js實現(xiàn)帶簡單彈性運(yùn)動的導(dǎo)航條
相關(guān)文章
JavaScript 變量,數(shù)據(jù)類型基礎(chǔ)實例詳解【變量、字符串、數(shù)組、對象等】
這篇文章主要介紹了JavaScript 變量,數(shù)據(jù)類型基礎(chǔ),結(jié)合實例形式詳細(xì)分析了JavaScript變量聲明、字符串、數(shù)組、對象等基本使用方法與操作注意事項,需要的朋友可以參考下2020-01-01JavaScript 數(shù)組的進(jìn)化與性能分析
這篇文章主要介紹了JavaScript 數(shù)組的進(jìn)化與性能分析,本文講得更多的是內(nèi)存、優(yōu)化、語法差異、性能、近來的演進(jìn)。需要的朋友可以參考下2017-09-09javascript table美化鼠標(biāo)滑動單元格變色
效果非常不錯的table美化,當(dāng)鼠標(biāo)滑過去,背景色變換效果2008-06-06Jquery和JS用外部變量獲取Ajax返回的參數(shù)值的方法實例(超簡單)
Jquery和JS用外部變量獲取Ajax返回的參數(shù)值的方法實例(超簡單),需要的朋友可以參考一下2013-06-06JS實現(xiàn)可自定義大小,可雙擊關(guān)閉的彈出層效果
這篇文章主要介紹了JS實現(xiàn)可自定義大小,可雙擊關(guān)閉的彈出層效果,涉及JavaScript定時函數(shù)及頁面元素動態(tài)操作的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10JavaScript undefined及null區(qū)別實例解析
這篇文章主要介紹了JavaScript undefined及null區(qū)別實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07微信小程序開發(fā)實現(xiàn)首頁彈框活動引導(dǎo)功能
自己x實現(xiàn)的一個比較簡單微信彈窗功能,主要就是教會大家對微信彈窗的用法和理解,這篇文章主要給大家介紹了關(guān)于微信小程序如何實現(xiàn)首頁彈框活動引導(dǎo)功能的相關(guān)資料,需要的朋友可以參考下2021-08-08