<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        js如何利用鍵盤事件實(shí)現(xiàn)人物行走

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-03 18:16:35
        文檔

        js如何利用鍵盤事件實(shí)現(xiàn)人物行走

        js如何利用鍵盤事件實(shí)現(xiàn)人物行走:使用的圖:效果圖:(推薦教程:javascript教程)實(shí)例代碼:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title
        推薦度:
        導(dǎo)讀js如何利用鍵盤事件實(shí)現(xiàn)人物行走:使用的圖:效果圖:(推薦教程:javascript教程)實(shí)例代碼:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title

        使用的圖:

        f82390ae8afb9ba9750fac88e04ad1c.png

        效果圖:

        26ecb9da85499cfc645fa0d782cda5e.png

        (推薦教程:javascript教程)

        實(shí)例代碼:

        <!DOCTYPE html>
        <html lang="en">
        <head>
         <meta charset="UTF-8">
         <title>Title</title>
         <style>
         html
         {
         background-color: deepskyblue;
         }
         div
         {
         width: 32px;
         height: 32px;
         background-image: url("img/Actor01-Braver03.png");
         position: absolute;
         }
         </style>
        </head>
        <body>
         <div></div>
         <script>
         var key=0;
         var bool=false;
         var speed=2;//每次行走的距離
         var actor;//人物div
         const HEIGHT=33;//人物的高
         const WIDTH=32;//人物的寬
         var arr=[1,3,2,0];//4排圖像 代表 下 左 右 上
         var num=0;
         var jumpBool=false;
         var actorSkinSpeed=8;
         var jumpSpeed=-15;
         init();
         function init() {
         window.addEventListener("keydown",keyHandler);
         window.addEventListener("keyup",keyHandler);
         actor=document.querySelector("div");
         setInterval(animation,16);
         //按鍵驅(qū)動(dòng)不能實(shí)現(xiàn) 實(shí)現(xiàn)的是通過按鍵觸發(fā)相應(yīng)動(dòng)畫 實(shí)現(xiàn)我們的人物的幀動(dòng)畫 跳轉(zhuǎn)
         }
         
         function keyHandler(e) {
         bool=e.type==="keydown";
         key=e.keyCode;
         if(!bool){
         num=0;
         actor.style.backgroundPositionX=-num*WIDTH+"px";
         }
         if(key===32 && !jumpBool){//跳躍 空格驅(qū)動(dòng)
         jumpBool=true;
         }
         }
         
         function animation() {
         jump();
         if(!bool)return;
         walk();//單方向行走 實(shí)現(xiàn)
         changeDirection();//方向確定時(shí) 內(nèi)部行走的實(shí)現(xiàn)
         }
         
         function jump() {
         if(!jumpBool)return;
         jumpSpeed+=1;
         if(jumpSpeed===15){
         jumpBool=false;
         jumpSpeed=-15;
         return;
         }
         actor.style.top=actor.offsetTop+jumpSpeed+"px";
         }
         
         function changeDirection() {
         actorSkinSpeed--;
         if(actorSkinSpeed>0) return;
         actorSkinSpeed=8;
         num++;
         if(num>3) num=0;
         actor.style.backgroundPositionX=-num*WIDTH+"px";
         }
         
         function walk() {
         switch (key){
         case 37://左 ×1 第二排
         actor.style.left=actor.offsetLeft-speed+"px";
         actor.style.backgroundPositionY=-arr[0]*HEIGHT+"px";
         break;
         case 38://上 ×3 第四排
         actor.style.top=actor.offsetTop-speed+"px";
         actor.style.backgroundPositionY=-arr[1]*HEIGHT+"px";
         break;
         case 39://右 ×2 第三排
         actor.style.left=actor.offsetLeft+speed+"px";
         actor.style.backgroundPositionY=-arr[2]*HEIGHT+"px";
         break;
         case 40://下 ×0 第一排
         actor.style.top=actor.offsetTop+speed+"px";
         actor.style.backgroundPositionY=-arr[3]*HEIGHT+"px";
         break;
         
         }
         }
         </script>
        </body>
        </html>

        相關(guān)視頻教程推薦:javascript視頻教程

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        js如何利用鍵盤事件實(shí)現(xiàn)人物行走

        js如何利用鍵盤事件實(shí)現(xiàn)人物行走:使用的圖:效果圖:(推薦教程:javascript教程)實(shí)例代碼:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title
        推薦度:
        標(biāo)簽: 人物 實(shí)現(xiàn) js
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲国产精品久久久久网站| 亚洲综合无码AV一区二区| 亚洲妇女水蜜桃av网网站| 99爱视频99爱在线观看免费 | 成年女人男人免费视频播放| 亚洲成a人不卡在线观看| 免费在线观看h片| 亚洲日本国产综合高清| 毛片a级毛片免费观看品善网| 亚洲自偷自偷在线成人网站传媒| 91情侣在线精品国产免费| 亚洲国产日韩a在线播放| 最好免费观看韩国+日本| 国产成人 亚洲欧洲| 自拍偷自拍亚洲精品情侣| 亚洲视频免费在线观看| 亚洲白色白色在线播放| 成年在线网站免费观看无广告| 亚洲精品久久无码| 亚洲另类少妇17p| 精品在线免费观看| 亚洲偷自精品三十六区| 在线jyzzjyzz免费视频| 在线免费视频你懂的| 久久久亚洲欧洲日产国码二区| 成人免费无遮挡无码黄漫视频| 豆国产96在线|亚洲| 亚洲人成中文字幕在线观看| 91久久成人免费| 亚洲日韩在线中文字幕综合| 亚洲中文字幕无码久久综合网| 国产免费女女脚奴视频网 | 亚洲一区二区三区在线视频| 国产一区二区三区免费| 亚洲免费福利在线视频| 中文字幕精品亚洲无线码一区| 69视频在线观看免费| 国产亚洲男人的天堂在线观看| 久久久久无码精品亚洲日韩| 日本高清免费中文字幕不卡| 三年片在线观看免费西瓜视频|