js實現的元素運動程式碼例項
本章節分享一個能夠實現元素直線運動的程式碼例項,程式碼非常的簡單,僅供參考之用,希望能夠對初學者帶來一定的參考。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> *{ margin:0px; padding:0px; } #run{ border:5px red solid ; display:inline-block; width:40px; height:20px; font-size:20px; text-align:center; } </style> <script type="text/javascript"> var timer=null; var maR=0; var flag=0; function moveright(){ run.style.marginLeft=maR+"px"; maR=maR+1; } function moveleft(){ run.style.marginLeft=maR+"px"; maR=maR-1; } function go(){ start.disabled=true; pause.disabled=false; run.innerHTML=parseInt(run.innerHTML)+1; timer=setTimeout(go,10); if(flag==1){ setTimeout(moveleft,10); } if(flag==0){ setTimeout(moveright,10); } if(maR>(window.outerWidth-60)){ flag=1; } if(maR<0){ flag=0; } } function stop(){ start.disabled=false; pause.disabled=true; clearTimeout(timer); } window.onload=function(){ var start=document.getElementById("start"); var pause=document.getElementById("pause"); start.onclick=function(){ go(); } pause.onclick=function(){ stop() } } </script> </head> <body> <button id="start">開始運動</button> <button id="pause" disabled>暫停運動</button> <br/> <span id="run">0</span> </body> </html>
以上程式碼實現了簡單的執行效果,下面對實現原理做一下簡單介紹。
一.實現原理:
原理其實非常的簡單,當點按鈕的時候,就會執行註冊的事件處理函式,此函式可以利用定時器函式遞迴執行並動態設定元素的外邊距,這樣就實現了運動效果,至於運動具有折返的功能,就是通過判斷外邊距和是否小於0和大於介面的寬度。
二.相關閱讀:
1.動態設定外邊距可以參閱javascript style一章節。
2.parseInt()函式可以參閱javascript parseInt()一章節。
3.setTimeout()函式可以參閱setTimeout()方法一章節。
4.outerWidth屬性可以參閱outerwidth一章節。
5.clearTimeout()函式可以參閱clearTimeout()方法一章節。
相關文章
- js實現的元素抖動效果程式碼例項JS
- javascript實現的多元素緩衝運動程式碼例項JavaScript
- js實現的冪運算程式碼例項JS
- javascript元素水平運動程式碼例項JavaScript
- js元素的震動效果程式碼例項JS
- js實現的dom元素拖動封裝外掛程式碼例項JS封裝
- javascript元素勻速運動程式碼例項JavaScript
- js元素上下移動效果程式碼例項JS
- js動態連結<a>元素程式碼例項JS
- js動態建立HTML元素程式碼例項JSHTML
- js實現li元素隔行背景變色例項程式碼JS
- js實現的div拖動效果例項程式碼JS
- js實現的文字垂直滾動例項程式碼JS
- js獲取元素的實際尺寸程式碼例項JS
- js實現的通過拖動調整元素間的相對位置程式碼例項JS
- js實現的div元素尺寸彈性縮放效果程式碼例項JS
- js實現的獲取指定元素的節點封裝程式碼例項JS封裝
- js實現jquery的extend()程式碼例項JSjQuery
- js實現的警告框例項程式碼JS
- javascript div元素彈性緩衝運動程式碼例項JavaScript
- js圓形環繞運動程式碼例項JS
- javascript實現的動態設定元素透明度程式碼例項JavaScript
- javascript實現的交換li元素的位置程式碼例項JavaScript
- js實現的動態引入css檔案程式碼例項JSCSS
- js實現的網頁標題閃動程式碼例項JS網頁
- js元素挨個掉落程式碼例項JS
- js刪除li元素程式碼例項JS
- angularJS操作input元素程式碼例項AngularJS
- js陣列元素排序程式碼例項JS陣列排序
- 實現js檔案動態載入程式碼例項JS
- js動態設定元素透明度程式碼例項JS
- js動態設定元素css樣式程式碼例項JSCSS
- js通過拖動調整元素位置程式碼例項JS
- 使用jquery實現的清空表單元素程式碼例項jQuery
- jQuery實現的刪除指定子元素程式碼例項jQuery
- js刪除指定的li元素程式碼例項JS
- js實現的垂直選項卡效果程式碼例項JS
- 點選實現隱藏元素本身程式碼例項