JavaScript元素動畫效果
分享一段程式碼例項,它實現了js以動畫方式操作dom元素,實現改變元素屬性的功能。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> * { margin: 0; padding: 0; } #box { position: absolute; width: 200px; height: 200px; background: red; } </style> <script type="text/javascript"> window.onload = function() { var btn = document.getElementById("btn"); var box = document.getElementById("box"); function getStyle(obj, style) { if (window.getComputedStyle) { return window.getComputedStyle(obj, null)[style]; } else { return obj.currentStyle[style]; } } function animationRetard(obj, json, fn) { clearInterval(obj.anime); obj.anime = setInterval(function() { var flag = true; for (var key in json) { var now = parseInt(getStyle(obj, key)); var step = json[key] > now ? Math.ceil((json[key] - now) / 10) : Math.floor((json[key] - now) / 10); now += step; if (Math.abs(json[key] - now) > Math.abs(step)) { obj.style[key] = now + "px"; flag = false; } else { obj.style[key] = json[key] + "px"; } } if (flag) { clearInterval(obj.anime); if (fn) { fn(); } } }, 20); } btn.onclick = function() { animationRetard(box, { "width": 600, "height": 400, "top": 100, "left": 100 }, function() { animationRetard(box, { "width": 300, "height": 200, "top": 50, "left": 50 }, function() { animationRetard(box, { "width": 600, "height": 500, "top": 400, "left": 1000 }) }) }) } } </script> </head> <body> <input id="btn" type="button" value="改變"/> <div id="box"></div> </body> </html>
相關文章
- JavaScript 簡單動畫效果JavaScript動畫
- JavaScript 動畫效果例項JavaScript動畫
- Javascript實現動畫效果JavaScript動畫
- jQuery元素動畫方式滑動效果jQuery動畫
- JavaScript元素抖動效果JavaScript
- JavaScript簡單的動畫效果JavaScript動畫
- JavaScript字串動畫輪播效果JavaScript字串動畫
- 用JavaScript實現動畫效果 (轉)JavaScript動畫
- JavaScript元素拖拽路徑回放效果JavaScript
- JavaScript教程全套影片合集:DOM動畫效果JavaScript動畫
- javascript實現文字拼寫動畫效果JavaScript動畫
- jQuery實現的元素淡入淡出動畫效果jQuery動畫
- jquery外掛——點選交換元素位置(帶動畫效果)jQuery動畫
- SVG 動畫實現彈性的頁面元素效果SVG動畫
- JavaScript 動畫效果簡單例項程式碼JavaScript動畫單例
- javascript仿天貓加入購物車動畫效果JavaScript動畫
- javascript div元素滑鼠拖動效果詳解JavaScript
- JavaScript動畫方式改變元素寬度和高度JavaScript動畫
- 實現元素動畫的6款 JavaScript 外掛動畫JavaScript
- JavaScript 動畫效果緩慢二級下拉選單JavaScript動畫
- javascript實現animate()動畫效果程式碼例項JavaScript動畫
- javascript元素迴圈插入效果程式碼例項JavaScript
- 簡單的動畫方式實現的元素下拉和上卷效果動畫
- JavaScript與CSS3動畫方式改變元素尺寸JavaScriptCSSS3動畫
- JavaScript 動畫方式設定元素尺寸和透明度JavaScript動畫
- 10個令人印象深刻的JavaScript動畫效果網站JavaScript動畫網站
- javascript元素內容漸現效果程式碼例項JavaScript
- jquery實現的元素以動畫方式移動和漸變效果jQuery動畫
- JavaScript動畫方式控制div元素的隱藏和顯示JavaScript動畫
- jQuery 效果 – 動畫jQuery動畫
- UGUI動畫效果UGUI動畫
- javascript實現的動畫效果簡單例項程式碼JavaScript動畫單例
- javascript元素透明度漸變效果程式碼例項JavaScript
- javascript元素滑鼠跟隨效果程式碼例項詳解JavaScript
- javascript元素3D旋轉效果程式碼例項JavaScript3D
- javascript實現的點選當前元素隱藏效果JavaScript
- CSS3 元素水平運動和背景色切換動畫效果CSSS3動畫
- JS動畫效果——多物體動畫JS動畫