溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何利用js模仿360開機的效果

發(fā)布時間:2020-04-07 10:24:13 來源:億速云 閱讀:109 作者:小新 欄目:web開發(fā)

如何利用js模仿360開機的效果?很多人都不太了解,今天小編為了讓大家更加了解js模仿360開機效果的方法,所以給大家總結了以下內(nèi)容,一起往下看吧。

如何利用js模仿360開機的效果

實現(xiàn)效果:

點擊關閉圖片按鈕先往下退出再往右退出。

實現(xiàn)步驟:

1、封裝運動函數(shù)

2、給圖片上的關閉設置一個盒子

3、給關閉盒子注冊點擊事件點擊后

4、下面圖片高度為0,設置一個緩動動畫

5、上面圖片寬度為0,設置一個緩動動畫

緩動動畫代碼(帶回調(diào)函數(shù)):`

 function getStyle(obj,attr){ //兼容性寫法獲得樣式
        if(window.getComputedStyle){ 
          return window.getComputedStyle(obj, null)[attr];
        }else{
          return obj.currentStyle[attr];
        }
      }
       function animate(obj, json, speed, callback){
        clearInterval(obj.timer);
        obj.timer = setInterval(function(){
          var flag = true;
          for(var attr in json){
          var current = parseInt(getStyle(obj,attr));
          var step = (json[attr] - current) / 10;
           step = step > 0 ? Math.ceil(step) : Math.floor(step);
           obj.style[attr] = current + step +'px';
          if(current != json[attr]){
            flag = false;
          }
        }
         if(flag){ 
          clearInterval(obj.timer);
          if(callback && typeof callback == 'function'){ //驗證callback是否傳遞,傳遞的話看是否是函數(shù)類型
           callback();
          }
         }
        },speed);
      }

開機圖片,的由兩個圖片中組成

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title></title>
  <style>
    .box{
      width: 322px;
      position: fixed;
      bottom:0;
      right:0;
    }
    span{
      position: absolute;
      top:0;
      right:0;
      width:30px;
      height: 20px;
      cursor: pointer;
    }
    .box img{
      vertical-align: top;
    }
  </style>
  <script type="text/javascript" src="函數(shù)封裝.js"></script>
  <script type="text/javascript">
    function $(id){
      return document.getElementById(id);
    }
    window.onload = function(){
      var span = document.getElementsByTagName('span')[0];
      var box = $('box');
      var bottom = $('bt');
      var top = $('hd');
      span.onclick = function(){
        var json = {"height": 0};
        animate(bottom,json,20,function(){
        animate(box,{"width":0},20);
        });
      }
    }
  </script>
</head>
<body>
<div id="box">
  <span></span>
  <div id="hd">
    <img src="images/t.jpg" alt=""/>
  </div>
  <div id="bt">
    <img src="images/b.jpg" alt=""/>
  </div>
</div>
</body>
</html>

效果如下:

如何利用js模仿360開機的效果

以上就是如何利用js模仿360開機的效果的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業(yè)資訊頻道哦!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

js
AI