最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript實(shí)現(xiàn)左右緩動動畫函數(shù)

 更新時(shí)間:2020年11月25日 12:59:12   作者:persistsss  
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)左右緩動動畫函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了js實(shí)現(xiàn)左右緩動動畫函數(shù)的封裝代碼,供大家參考,具體內(nèi)容如下

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <link rel="stylesheet" href="bootstrap-4.4.1.css" >
 <style>
 
 .box{
 width: 100px;
 height: 100px;
 background-color: chartreuse;
 position:absolute;
 }
 </style>
 </head>
 <body>

 <button class="btn1">移動400px</button>
 <button class="btn2">移動800px</button>
 <div class="box"></div>

 <script>

 let btn1 = document.querySelector('.btn1');
 let btn2 = document.querySelector('.btn2');
 let box = document.querySelector('.box');

 btn1.onclick = function(){
 animate(box,400);
 }

 btn2.onclick = function(){
 animate(box,800);
 }

 // 緩動動畫
 function animate(element,target){
 // 清除定時(shí)器
 clearInterval(element.timeId);

 element.timeId = setInterval(function(){
  // 獲取元素當(dāng)前的位置
  let current = element.offsetLeft;
  // 當(dāng)current越大,step越小,先快后慢
  let step = (target - current) / 10;
  // 當(dāng)step大于0時(shí),step向上取整,否則,step向下取整
  step = step > 0 ? Math.ceil(step) : Math.floor(step);
  current += step;
  element.style.left = current + 'px';
  // 不用擔(dān)心到達(dá)不了目標(biāo)位置,因?yàn)閟tep最小達(dá)到1
  if(current == target){
  clearInterval(element.timeId);
  }
  console.log("目標(biāo)位置:" + target + "當(dāng)前位置:" + current + "每次移動的步數(shù):" + step);
 },20);
 }

 </script>
 
 </body>
</html>

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

相關(guān)文章

最新評論

阿鲁科尔沁旗| 宝清县| 泸溪县| 波密县| 正宁县| 顺平县| 临清市| 红河县| 张家港市| 敦煌市| 通河县| 徐闻县| 马关县| 江永县| 开江县| 贵州省| 镇坪县| 海兴县| 陈巴尔虎旗| 伽师县| 湖南省| 巴中市| 昌平区| 静乐县| 新竹市| 南木林县| 射阳县| 个旧市| 滨州市| 游戏| 富蕴县| 施甸县| 武汉市| 广德县| 会同县| 东源县| 凤冈县| 道孚县| 大余县| 郯城县| 昌吉市|