av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

JavaScript實現緩動動畫

瀏覽:112日期:2023-06-14 09:10:33

JavaScript原生定時器實現動畫的緩動效果,供大家參考,具體內容如下

原理很簡單通過定時器修改邊距達到移動動畫效果

實現速度的變化

緩動必然移動速度會有變化,這里需要用到一個小公式或者說算法?

移動單位 = (指定移動位置邊距 - obj.offsetLeft) / 10;var step = (ydpx - obj.offsetLeft) / 10;

有一個細節需要注意下:

移動的步數應該去掉小數,否者因為除法的原因無法移動到指定位置,會有一些差距當step小于0對應的是向左移動舍去小數如:1.2 為1大于0向右移動,進位,如:1.2為2這應該是個數學問題**

之后代碼的實現就簡單多了:

//ydjl:移動到指定位置 (obj.offsetLeft)function animate(obj,ydpx) { //清除定時器 防止每一次調用都產生一個定時器,疊加導致問題(速度變快) clearInterval(obj.timer); obj.timer=setInterval(function () { var step = (ydpx - obj.offsetLeft) / 10; //移動距離 //取整 step = step>0 ? Math.ceil(step) : Math.floor(step); //判斷是否移動到指定位置 if(obj.offsetLeft == ydpx) { //清除定時器,停止移動 clearInterval(obj.timer); } //修改left實現移動 obj.style.left = obj.offsetLeft + step + ’px’; },15)//移動間隔設置}

下面是演示:

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title> <style> .boks{ position: absolute; top: 300px; left:0; width: 100px; height: 100px; background-color: #ff0011; } </style></head><body><button class='yd500'>移動500px</button><button class='yd800'>移動800px</button><div class='boks'>hezi</div></body><script> function animate(obj,ydpx) { //清除定時器 clearInterval(obj.timer); obj.timer=setInterval(function () { var step = (ydpx - obj.offsetLeft) / 10; step = step>0 ? Math.ceil(step) : Math.floor(step); if(obj.offsetLeft == ydpx) { clearInterval(obj.timer); } obj.style.left = obj.offsetLeft + step + ’px’; },15); } var yd500 = document.querySelector('.yd500'); var yd800 = document.querySelector('.yd800'); //盒子 var boks = document.querySelector('.boks'); yd500.addEventListener(’click’, function() { // 調用函數 animate(boks, 500); //傳遞要移動的對象 和 移動位置 }) yd800.addEventListener(’click’, function() { // 調用函數 animate(boks, 800); //傳遞要移動的對象 和 移動位置 })</script></html>

萌新小白的學習記錄

JavaScript實現緩動動畫

JavaScript實現緩動動畫

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 久久91精品 | 国产成人99久久亚洲综合精品 | 久久综合五月天 | 人人爱人人澡 | 精品久久免费视频 | 三级网站 | 国产精品成人在线 | 亚色网站| 青青青草视频在线观看 | 亚洲国产成人在线 | 91视频日本 | 超碰一区二区 | 久久国产精品视频 | 欧美综合久久 | 91麻豆精品一区二区三区 | av在线免费观看网址 | 亚洲成人欧美 | 性色av一区二区 | 国产中文字幕在线播放 | 成人欧美一区二区三区白人 | 欧美大片一区二区 | 日韩一区二区三区在线 | 综合婷婷 | 久久久久久久久国产精品 | 国产第二页 | 偷拍福利视频 | 日日夜夜狠狠 | av手机天堂| 自拍偷拍亚洲 | 欧美午夜精品久久久久免费视 | 黄色av毛片| 亚洲精品在线视频观看 | 欧美日韩国产片 | 日韩黄网| 成人看片网| 亚洲精品tv | 黄色片网站免费 | 午夜视频免费看 | 草草在线视频 | 国模一区二区 | 亚洲成人免费网站 |