亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

JavaScript實(shí)現(xiàn)緩動動畫

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

JavaScript原生定時器實(shí)現(xiàn)動畫的緩動效果,供大家參考,具體內(nèi)容如下

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

實(shí)現(xiàn)速度的變化

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

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

有一個細(xì)節(jié)需要注意下:

移動的步數(shù)應(yīng)該去掉小數(shù),否者因為除法的原因無法移動到指定位置,會有一些差距當(dāng)step小于0對應(yīng)的是向左移動舍去小數(shù)如:1.2 為1大于0向右移動,進(jìn)位,如:1.2為2這應(yīng)該是個數(shù)學(xué)問題**

之后代碼的實(shí)現(xiàn)就簡單多了:

//ydjl:移動到指定位置 (obj.offsetLeft)function animate(obj,ydpx) { //清除定時器 防止每一次調(diào)用都產(chǎn)生一個定時器,疊加導(dǎo)致問題(速度變快) 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實(shí)現(xiàn)移動 obj.style.left = obj.offsetLeft + step + ’px’; },15)//移動間隔設(shè)置}

下面是演示:

<!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() { // 調(diào)用函數(shù) animate(boks, 500); //傳遞要移動的對象 和 移動位置 }) yd800.addEventListener(’click’, function() { // 調(diào)用函數(shù) animate(boks, 800); //傳遞要移動的對象 和 移動位置 })</script></html>

萌新小白的學(xué)習(xí)記錄

JavaScript實(shí)現(xiàn)緩動動畫

JavaScript實(shí)現(xiàn)緩動動畫

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 国产不卡视频在线 | 亚洲国产精品成 | 丁香婷婷久久大综合 | 日本欧美韩国专区 | 久久久国产精品免费视频 | 丁香六月婷婷在线 | 亚洲国产欧美精品 | 青草国产在线视频 | 色天天综合网 | 国产色视频一区二区三区 | 免费一级欧美片片线观看 | 免费看一级性生活片 | 日本aaaa精品免费视频 | 黄在线网站 | 视频二区| 久久性| 一级毛片大全 | 50-60岁老妇女一级毛片 | 五月天在线婷婷 | 女色在线观看免费视频 | 国产成人精品亚洲777图片 | 欧美日中文字幕 | 欧美成人香蕉在线观看 | 亚洲高清在线天堂精品 | 欧美黄色tv | 黄网免费观看 | 久久久99精品免费观看 | 你懂得国产 | 桃花阁成人网在线观看 | 九九精品在线视频 | 伊人久久青草青青综合 | 1024jd基地手机看国产 | 57pao国产成永久免费视频 | 欧美黄色一级网站 | 麻豆精品国产剧情在线观看 | 中文字幕乱 | 黄色在线播 | 91在线精品亚洲一区二区 | 91免费观看视频 | 成年午夜视频免费观看视频 | 亚洲不卡一区二区三区在线 |