中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

JS實現的拋物線運動效果示例

發布時間:2020-10-14 14:06:12 來源:腳本之家 閱讀:214 作者:zhuolei123 欄目:web開發

本文實例講述了JS實現的拋物線運動效果。分享給大家供大家參考,具體如下:

先來看看運行效果:

JS實現的拋物線運動效果示例

具體代碼如下:

<!doctype html >
<html>
<head>
  <meta charset="utf-8"/>
  <title>拋物線運動</title>
  <style>
    .pwx_rect{position:absolute;left:10px;top:300px;background-color:#888;height:50px;width:50px;}
    .pwx_hr{border-top:2px solid #ddd;position:absolute;width:98%;left:0px;top:350px;}
  </style>
  <script>
    test = function(){
      var rect = document.getElementById("rect");
      pwx(rect,60,5); //參數2:拋物線角度,參數3:橫向速度每次增加5
    }
    function pwx(rect,radian,step){
      var animate = function(opt){
        var cos = Math.cos(opt.radian*Math.PI/180);//鄰邊比斜邊,60度的話等于1/2
        var sin = Math.sin(opt.radian*Math.PI/180);//對邊比斜邊,30度的話等于1/2
        var left = opt.rect.offsetLeft;
        var top = opt.rect.offsetTop;
        if(opt.radian>0){
          left+=opt.step;
          opt.radian-=1; //角度遞減1
          var a = left - opt.initLeft;
          var c = (a/cos);
          var b = (sin*c);
          opt.rect.style.left = opt.initLeft+a+"px";
          opt.rect.style.top = opt.initTop-b+"px";
          setTimeout(function(){
            animate(opt);
          },10);
        }else{
          opt.rect.style.left = left+opt.step+"px";
          opt.rect.style.top = opt.initTop+"px";
        }
      }
      animate({
        step : step,
        rect : rect,
        radian : radian,
        initTop : rect.offsetTop,
        initLeft : rect.offsetLeft
      });
    }
  </script>
</head>
<body>
www.jb51.net
<input type="button" value="拋物線" onclick="test()"/>
  <div class="pwx_rect" id="rect"></div>
  <div class="pwx_hr"></div>
</body>
</html>

實現思路:

JS實現的拋物線運動效果示例

X方向的邊長每次遞增5,角度每次遞減1,根據這兩個已知條件,通過三角函數就可以計算出Y方向的長度是多少

從而得出每次運動的X和Y方向的坐標值,達到拋物線的效果

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript運動效果與技巧匯總》、《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

向AI問一下細節

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

AI

罗田县| 合山市| 温泉县| 周宁县| 中山市| 兴义市| 合肥市| 山西省| 丹棱县| 都昌县| 泾川县| 福建省| 道孚县| 铜山县| 应城市| 长阳| 肇源县| 崇义县| 自治县| 和林格尔县| 绵竹市| 九龙坡区| 蓬溪县| 华容县| 东台市| 额敏县| 高雄市| 修文县| 淮滨县| 晋中市| 南部县| 上饶县| 凉山| 洪江市| 浮梁县| 镇安县| 普宁市| 垣曲县| 葵青区| 慈溪市| 平邑县|