欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js實(shí)現(xiàn)超級(jí)瑪麗小游戲

 更新時(shí)間:2020年03月18日 10:20:13   作者:Liangyi_J  
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)超級(jí)瑪麗小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了js超級(jí)瑪麗小游戲的具體代碼,供大家參考,具體內(nèi)容如下

怎么用通過按鍵,來控制圖片的位置
這個(gè)小游戲,用面向?qū)ο髸?huì)很方便,不用面向?qū)ο髸?huì)很麻煩很麻煩,比如以后要講解的坦克大戰(zhàn)的游戲,要是用純的面向過程或函數(shù)式的方式寫,那維護(hù)起來會(huì)非常的麻煩。 

游戲分析:

看看如何通過按鈕來控制mario的位置

設(shè)計(jì)相關(guān)的對(duì)象(Mario x y ...)

onclick屬性:當(dāng)用戶點(diǎn)擊某個(gè)對(duì)象時(shí)調(diào)用的事件句柄 

素材

代碼在目錄:超級(jí)瑪利亞.html

<html> 
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  
 <style>
 
  .gamediv{ 
  width: 500px; 
  height: 400px; 
  background-color: pink; 
 
 } 
  
 
 /*表格樣式*/ 
 .controlcenter{ 
  width: 200px; 
  height: 200px; 
  border: 1px solid red; 
  text-align:center; 
 
 } 
 
 </style> 
 
 <head> 
 
 <script language="javascript"> 
  //設(shè)計(jì)Mario類 
  function Mario(){ 
  this.x=0; 
  this.y=0; 
  //移動(dòng) 順時(shí)針 0->上 1->右 2->下 3->左 
  this.move=function(direct){ 
   switch(direct){ 
 
   case 0: //向上 
    //window.alert("mario 右移動(dòng)"); 
    //這里為了改變 img的left 和top,我們需要得到 img元素。需要用到j(luò)avascript的DOM編程。img 對(duì)象 
    var mymario=document.getElementById('mymario'); 
    //取出 img 的top值 
    //window.alert(mymario.style.top); 
 
    //怎樣去掉50px的px 
    var top=mymario.style.top; 
    //px占據(jù)兩個(gè),即lenght-2 
    //window.alert(top.substr(0,top.length-2)); 
 
    //現(xiàn)在還是串,要轉(zhuǎn)成數(shù)值才能加減 
    top=parseInt(top.substr(0,top.length-2)); 
 
    //window.alert(top); 
    mymario.style.top=(top-2)+"px"; //開始移動(dòng)2px,看怎么拼接的,字符串和數(shù)值之間的轉(zhuǎn)換 
 
    //此時(shí)mario就可以向下移動(dòng)了,把上面的打印調(diào)試輸出代碼都注釋掉 
 
    break; 
 
   case 1: //向右 
 
    var mymario=document.getElementById('mymario'); 
    var left=mymario.style.left; 
    left=parseInt(left.substr(0,left.length-2)); 
    mymario.style.left=(left+2)+"px"; 
    break; 
 
   case 2: //向下 
 
    var mymario=document.getElementById('mymario'); 
    var top=mymario.style.top; 
    top=parseInt(top.substr(0,top.length-2)); 
    mymario.style.top=(top+2)+"px"; 
    break; 
 
   case 3: //向左 
 
    var mymario=document.getElementById('mymario'); 
    var left=mymario.style.left; 
    left=parseInt(left.substr(0,left.length-2)); 
    mymario.style.left=(left-2)+"px"; 
    break; 
 
   } 
 
  } 
 
  } 
 
 
  //創(chuàng)建Mario對(duì)象 
  var mario=new Mario(); 
 
 </script> 
 </head> 
 <body> 
 
 <div class="gamediv"> 
  <img id="mymario" src="person.png" style="left:100px; top:50px; position:absolute;" /> <!--用到了絕對(duì)定位--> 
  </div> 
  <table border="1px" class="controlcenter"> 
   <tr > 
   <td colspan="3" >游戲鍵盤</td> 
  </tr> 
  <tr> 
   <td>**</td> 
   <td><input type="button" value="向上" onclick="mario.move(0)" /></td>
   <!-- <td><input type="button" value="向上" onclick="marioMove(0)" /></td> -->
   <td>**</td> 
  </tr> 
 
  <tr>
 
   <td><input type="button" value="向左" onclick="mario.move(3)" /> </td>
   <td>**</td> 
   <td><input type="button" value="向右" onclick="mario.move(1)" /> </td> 
  </tr> 
 
  <tr> 
   <td>**</td> 
   <td><input type="button" value="向下" onclick="mario.move(2)" /> </td>
   <td>**</td> 
 
  </tr> 
 
  </table> 
 </body> 
 
</html> 

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

相關(guān)文章

  • 深入淺析JavaScript面向?qū)ο蠛驮秃瘮?shù)

    深入淺析JavaScript面向?qū)ο蠛驮秃瘮?shù)

    這篇文章主要介紹了深入淺析JavaScript面向?qū)ο蠛驮秃瘮?shù)的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • 詳解template標(biāo)簽用法(含vue中的用法總結(jié))

    詳解template標(biāo)簽用法(含vue中的用法總結(jié))

    這篇文章主要介紹了template標(biāo)簽用法(含vue中的用法總結(jié)),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-01-01
  • JavaScript?管道運(yùn)算符及工作原理

    JavaScript?管道運(yùn)算符及工作原理

    這篇文章主要介紹了JavaScript?管道運(yùn)算符,管道運(yùn)算符為我們的代碼添加了大量上下文,并簡(jiǎn)化了操作,以便以后可以擴(kuò)展它們,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • layer.confirm()右邊按鈕實(shí)現(xiàn)href的例子

    layer.confirm()右邊按鈕實(shí)現(xiàn)href的例子

    今天小編就為大家分享一篇layer.confirm()右邊按鈕實(shí)現(xiàn)href的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JS簡(jiǎn)單獲取當(dāng)前年月日星期的方法示例

    JS簡(jiǎn)單獲取當(dāng)前年月日星期的方法示例

    這篇文章主要介紹了JS簡(jiǎn)單獲取當(dāng)前年月日星期的方法,結(jié)合完整實(shí)例形式分析了javascript基于自定義函數(shù)獲取當(dāng)前日期時(shí)間的方法,涉及javascript中Date()類的使用與日期相關(guān)運(yùn)算技巧,需要的朋友可以參考下
    2017-02-02
  • JavaScript設(shè)計(jì)模式之單例模式詳解

    JavaScript設(shè)計(jì)模式之單例模式詳解

    單例模式(Singleton Pattern)是一種創(chuàng)建型設(shè)計(jì)模式,確保一個(gè)類只有一個(gè)實(shí)例,并提供全局訪問該實(shí)例的方式,這在某些場(chǎng)景下非常有用,例如配置管理類、日志類或數(shù)據(jù)庫連接管理類,需要的朋友可以參考下
    2024-08-08
  • uni-app分包項(xiàng)目實(shí)戰(zhàn)總結(jié)

    uni-app分包項(xiàng)目實(shí)戰(zhàn)總結(jié)

    在使用uniapp開發(fā)過程中,隨著我們的代碼工程越來越大,必然會(huì)面臨一個(gè)問題,就是打出來的包會(huì)越來越大,下面這篇文章主要給大家介紹了關(guān)于uni-app分包項(xiàng)目實(shí)戰(zhàn)的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 一些你可能不熟悉的JS知識(shí)點(diǎn)總結(jié)

    一些你可能不熟悉的JS知識(shí)點(diǎn)總結(jié)

    這篇文章主要為大家介紹一下JS中一些你可能不熟悉的知識(shí)點(diǎn)給整理一下,學(xué)習(xí)js的朋友可以看一下
    2019-03-03
  • javascript實(shí)現(xiàn)延時(shí)顯示提示框效果

    javascript實(shí)現(xiàn)延時(shí)顯示提示框效果

    這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)延時(shí)顯示提示框效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 用javascript獲取textarea中的光標(biāo)位置

    用javascript獲取textarea中的光標(biāo)位置

    Javascript一向以他的靈活隨意而著稱,這也使得它的功能可以非常的強(qiáng)大,而由于沒有比較好的調(diào)試工具,又使得它使用起來困難重重,尤其使對(duì)于一些初學(xué)者,更是感覺到無從下手。今天探討的問題是用javascript獲取textarea中光標(biāo)的位置。
    2008-05-05

最新評(píng)論