JavaScript簡單的動畫效果
本章節分享一段程式碼例項,它通過定時器函式實現了簡單的動畫效果。
當然是用此方式實現的動畫不夠流程,比如會出現類似於抖動的現象,不過也可以從其中獲取一些相關的應用知識。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #antzone{ width:200px; height:200px; background:red; position:absolute; left:0; top:60px; } </style> <script type="text/javascript"> window.onload=function(){ var oDiv=document.getElementById("antzone"); var oBt=document.getElementsByTagName('input')[0]; var time=null; oBt.onclick=function(){ clearInterval(time); time=setInterval(function(){ var speed=7; if(oDiv.offsetLeft<=600){ oDiv.style.left=oDiv.offsetLeft+speed+'px'; } else{ clearInterval(time); } },40); } } </script> </head> <body> <input type="button" value="開始運動" /> <div id="antzone"></div> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(2).var oDiv=document.getElementById("antzone"),獲取id屬性值為antzone的元素物件。
(3).var oBt=document.getElementsByTagName('input')[0],獲取input元素集合中的第一個元素,也就是按鈕物件。
(4).var time=null,宣告一個變數並賦值為null,用來儲存定時器函式的標識。
(5).oBt.onclick=function(){},按鈕註冊click事件處理函式。
(6).clearInterval(time),停止定時器函式的執行,這裡是為了防止連續的點選導致兩次定時器函式執行重合現象。
(7).time=setInterval(function(){
var speed=7;
if(oDiv.offsetLeft<=600){
oDiv.style.left=oDiv.offsetLeft+speed+'px';
}
else{
clearInterval(time);
}
},40),每隔40毫秒執行一次相應的函式,也就是實現的運動效果。
二.相關閱讀:
(1).getElementsByTagName()方法參閱document.getElementsByTagName()一章節。
(2).setInterval()方法參閱setInterval()一章節。
(3).offsetLeft屬性參閱js offsetLeft一章節。
相關文章
- JavaScript 簡單動畫效果JavaScript動畫
- JavaScript 動畫效果簡單例項程式碼JavaScript動畫單例
- javascript實現的動畫效果簡單例項程式碼JavaScript動畫單例
- 前端動畫效果實現的簡單比較前端動畫
- css3實現的簡單動畫效果CSSS3動畫
- JavaScript元素動畫效果JavaScript動畫
- 分享一個簡單的畫刷動畫效果:?️BrushEffect動畫
- JavaScript 簡單計算器效果JavaScript
- JavaScript簡單留言板效果JavaScript
- JavaScript 動畫效果緩慢二級下拉選單JavaScript動畫
- JavaScript 動畫效果例項JavaScript動畫
- Javascript實現動畫效果JavaScript動畫
- 簡單的動畫方式實現的元素下拉和上卷效果動畫
- ExtJS簡單的動畫效果(extjs淡入淡出特效)JS動畫特效
- JavaScript字串動畫輪播效果JavaScript字串動畫
- JavaScript簡單的日曆效果程式碼例項JavaScript
- 用JavaScript實現動畫效果 (轉)JavaScript動畫
- 簡單的動畫 (numpy & PySimpleGUI)動畫GUI
- SVG簡單動畫SVG動畫
- JavaScript教程全套影片合集:DOM動畫效果JavaScript動畫
- javascript實現文字拼寫動畫效果JavaScript動畫
- javascript實現的簡單驗證碼效果程式碼例項JavaScript
- 10個令人印象深刻的JavaScript動畫效果網站JavaScript動畫網站
- 簡單的SVG線條動畫SVG動畫
- CSS3動畫效果下拉導航選單效果CSSS3動畫
- javascript仿天貓加入購物車動畫效果JavaScript動畫
- 簡單的 canvas 翻角效果Canvas
- Jquery簡單的placeholder效果jQuery
- 讓動畫實現更簡單,Flutter 動畫簡易教程!動畫Flutter
- canvas簡單的畫布動畫 - KaiqisanCanvas動畫AI
- Flutter Animation(1)動畫的簡單使用Flutter動畫
- android簡單的自定義動畫Android動畫
- jQuery簡單tab效果jQuery
- javascript實現animate()動畫效果程式碼例項JavaScript動畫
- WPF簡單動畫實現動畫
- JavaScript簡易留言板效果JavaScript
- 誰說 JavaScript 簡單的?JavaScript
- canvas實現簡答動畫張閉嘴效果Canvas動畫