<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
        主站蜘蛛池模板: 337p日本欧洲亚洲大胆色噜噜| 亚洲电影日韩精品| 亚洲黄网在线观看| 国产精品免费大片| 亚洲男人都懂得羞羞网站| 日本免费中文视频| 久久精品国产亚洲AV嫖农村妇女| 毛片在线播放免费观看| 亚洲男人天堂av| 18禁美女裸体免费网站| 亚洲三级在线播放| 好爽又高潮了毛片免费下载| 亚洲av中文无码乱人伦在线观看| 午夜男人一级毛片免费| 老司机免费午夜精品视频| 久久久久久A亚洲欧洲AV冫| 国产一区二区免费视频| 亚洲日产2021三区在线| 日韩一区二区a片免费观看 | 亚洲日韩精品一区二区三区 | 黄色成人免费网站| 亚洲中文字幕无码中文字| 在线看片无码永久免费aⅴ| 免费国产污网站在线观看不要卡| 久久亚洲欧洲国产综合| 久久久久免费精品国产小说| 激情综合亚洲色婷婷五月APP| 四虎影视免费在线| 国产精品午夜免费观看网站 | 亚洲av纯肉无码精品动漫| 亚洲日韩VA无码中文字幕| 免费精品一区二区三区第35 | 一边摸一边爽一边叫床免费视频| 亚洲国产精品无码久久一线| 国产精品视频免费观看| 国产精品自拍亚洲| 久久亚洲AV成人无码国产| 在线观看国产情趣免费视频| 免费在线观看一级片| 亚洲人成色777777老人头| 伊人久久综在合线亚洲91|