亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

HTML+JavaScript實現(xiàn)掃雷小游戲

 更新時間:2019年09月30日 07:26:37   作者:_干柿鬼鮫  
這篇文章主要為大家詳細(xì)介紹了HTML+JavaScript實現(xiàn)掃雷小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了JavaScript實現(xiàn)掃雷小游戲的具體代碼,供大家參考,具體內(nèi)容如下

工具:Sublime Text / Dreamweaver /Hbuilder

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>SaoLei</title>
<style type="text/css">
table
{
-webkit-touch-callout: none; /* iOS Safari */

-webkit-user-select: none; /* Chrome/Safari/Opera */

-khtml-user-select: none; /* Konqueror */

-moz-user-select: none; /* Firefox */

-ms-user-select: none; /* Internet Explorer/Edge */

user-select: none; /* Non-prefixed version, currently not supported by any browser */
}
</style>
</head>

<body>
<center style="margin:150px auto;">
<h2 style="font-family:Comic Sans Ms;">Mine Clearance(掃雷)&diams;</h2>
<p>請設(shè)置行和列開始游戲</p>
<p>游戲難度:<select id="level" onchange="changelevel()"><option>小白級</option><option>大神級</option></select></p>
<p id="select_level"></p>
行: <input type="text" id="rows"> 
列: <input type="text" id="cols"> 
<button id="add" onClick="add()">PlayGame</button>
<br>
<p id="tips"></p>
<p id="leiNum"></p>
<table border="2" id="tab" ></table>
<p id="GScore"></p>

</center>

<script type="text/javascript">

 var lei =new Array("&hearts;","0","&hearts;","&hearts;","&hearts;","&hearts;");
 var tab =$("tab");
 var GScore=$("GScore");
 var score=0;
 var tip=$("tips");
 var time;
 var i=3;
 var row =$("rows");
 var col =$("cols");
 var Total=0;
 var lei_count =0;
 var levels= $("level");
 var select_level=$("select_level");

 function add()
 {
 clear();
 tip.innerHTML="游戲開始";
 score=0;
 GScore.innerHTML="當(dāng)前得分:"+score;
 lei_count=0;
 tab.innerHTML="";
 Total=0;
 Total=parseInt(row.value)*parseInt(col.value);
 for(var i=0;i<row.value;i++)
 {
 var newTr =document.createElement("tr");
 newTr.id=i;//
 newTr.style.background="black";
 for(var j=0;j<col.value;j++)
 {//
 var rand=parseInt(Math.random()*lei.length);
 newTr.innerHTML+="<td ><button id='"+i+","+j+"' style ='width:25px;height:25px;background:green; color:green; border:1px blue solid' οnclick='myclick(this)' οnmοuseοver='changecolor(this)' οnmοuseοut='resetcolor(this)'>"+lei[rand]+"</button></td>";
 if(lei[rand]=="0")
 {
 lei_count++;
 }
 }
 tab.appendChild(newTr);
 }
 Total=Total-lei_count;
 var leinum =$("leiNum");
 leinum.innerHTML="本局雷數(shù):"+lei_count;
 }
 
 function $(id)
 {
 return document.getElementById(id);
 }
 
 function change(obj)
 {
 
 if(obj.innerHTML=="0")
 {
 time=setInterval(times,1000);
 obj.style.backgroundColor="red";
 obj.innerHTML="💀";
 alert("Game Over!");
 
 }else
 {
 obj.style.backgroundColor="white";
 score=score+1;
 }
 GScore.innerHTML="當(dāng)前得分:"+score;
 }
 
 function myclick(obj)
 {
 if(obj.style.background!="white")
 {
 change(obj);
 check(obj);
 Total--;
 if(Total==0)
 {
 alert("你贏了!總分:"+score);
 }
 
 }
 }
 
 
 function changecolor(obj)
 {
 obj.style.border="1px red solid ";
 }
 function resetcolor(obj)
 {
 obj.style.border="1px blue solid";
 }
 function times()
 {
 
 tip.innerHTML="游戲結(jié)束,"+i+"秒后重新開始游戲";
 if(i==0)
 {
 add();
 }
 i--;
 }
 function clear()
 {
 clearInterval(time);
 i=3;
 }
 
 function check(obj)
 {
 var index=0;
 var len =obj.id.split(",");
 index=Number(len[1]);//下標(biāo)
 var boom =0;

 //左節(jié)點
 if(index-1>=0)
 {
 if(obj.parentNode.previousSibling.childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.previousSibling.childNodes[0].style.background="black";
 }
 }
 //右節(jié)點
 if(index!=Number(col.value)-1){
 if(obj.parentNode.nextSibling.childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.nextSibling.childNodes[0].style.background="black";
 }
 }
 //上節(jié)點
 if(obj.parentNode.parentNode.id!="0"){
 if(obj.parentNode.parentNode.previousSibling.childNodes[index].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.previousSibling.childNodes[index].childNodes[0].style.background="black";
 }
 }
 //下節(jié)點
 if(obj.parentNode.parentNode.id!=Number(row.value)-1){
 if(obj.parentNode.parentNode.nextSibling.childNodes[index].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.nextSibling.childNodes[index].childNodes[0].style.background="black";
 }
 }
 
 //左上節(jié)點
 if(index-1>=0 && obj.parentNode.parentNode.id!="0"){
 if(obj.parentNode.parentNode.previousSibling.childNodes[index-1].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.previousSibling.childNodes[index-1].childNodes[0].style.background="black";
 }
 }
 
 //右上節(jié)點
 if(index!=Number(col.value)-1 && obj.parentNode.parentNode.id!="0"){
 if(obj.parentNode.parentNode.previousSibling.childNodes[index+1].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.previousSibling.childNodes[index+1].childNodes[0].style.background="black";
 }
 }
 //左下節(jié)點
 if(index-1>=0 && obj.parentNode.parentNode.id!=Number(row.value)-1){
 if(obj.parentNode.parentNode.nextSibling.childNodes[index-1].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.nextSibling.childNodes[index-1].childNodes[0].style.background="black";
 }
 }
 //右下節(jié)點
 if(index!=Number(col.value)-1 && obj.parentNode.parentNode.id!=Number(row.value)-1){
 if(obj.parentNode.parentNode.nextSibling.childNodes[index+1].childNodes[0].innerHTML=="0")
 {
 boom++;
 if(levels.value=="小白級")
 obj.parentNode.parentNode.nextSibling.childNodes[index+1].childNodes[0].style.background="black";
 }
 }
 
 if(boom>0)
 obj.innerHTML=boom;
else
obj.innerHTML="&nbsp;";


 }
 
 
 function changelevel()
 {
 var info=levels.value;
 if(levels.value=="小白級")
 {
 info+="&nbsp;(自動排雷)"+"💀";
 }
 else
 {
 info+="💀💀💀";
 }

 select_level.innerHTML="你已選擇:"+info;
 }
 
 window.onload=changelevel;

 </script>
 }
 
</body>
</html>

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

相關(guān)文章

  • ES11屢試不爽的新特性,你用上了幾個

    ES11屢試不爽的新特性,你用上了幾個

    這篇文章主要介紹了ES11屢試不爽的新特性,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • javascript實現(xiàn)時間日期的格式化的方法匯總

    javascript實現(xiàn)時間日期的格式化的方法匯總

    這篇文章主要介紹了javascript實現(xiàn)時間日期的格式化的方法匯總,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • vue(javaScript)操作字符串的一些常用方法總結(jié)

    vue(javaScript)操作字符串的一些常用方法總結(jié)

    在平時前端開發(fā)中,我們不難發(fā)現(xiàn)經(jīng)常會用到字符串操作,這篇文章主要給大家介紹了關(guān)于vue(javaScript)操作字符串的一些常用方法的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • JavaScript實現(xiàn)點擊切換驗證碼及校驗

    JavaScript實現(xiàn)點擊切換驗證碼及校驗

    這篇文章主要為大家詳細(xì)介紹了JavaScript實現(xiàn)點擊切換驗證碼及校驗,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • ztree加載完成后顯示勾選節(jié)點的實現(xiàn)代碼

    ztree加載完成后顯示勾選節(jié)點的實現(xiàn)代碼

    zTree 是一個依靠 jQuery 實現(xiàn)的多功能 “樹插件”。優(yōu)異的性能、靈活的配置、多種功能的組合是 zTree 最大優(yōu)點。這篇文章主要介紹了ztree加載完成后顯示勾選節(jié)點的實現(xiàn)代碼 ,需要的朋友可以參考下
    2018-10-10
  • 微信小程序?qū)崿F(xiàn)授權(quán)登錄之獲取用戶信息

    微信小程序?qū)崿F(xiàn)授權(quán)登錄之獲取用戶信息

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)授權(quán)登錄之獲取用戶信息,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 獲取當(dāng)前點擊按鈕的id用this.id實現(xiàn)

    獲取當(dāng)前點擊按鈕的id用this.id實現(xiàn)

    這篇文章主要介紹了獲取當(dāng)前點擊按鈕的id的方法,,需要的朋友可以參考下
    2014-03-03
  • Bootstrap所支持的表單控件實例詳解

    Bootstrap所支持的表單控件實例詳解

    Bootstrap 支持最常見的表單控件,主要是 input、textarea、checkbox、radio 和 select。本文通過實例代碼給大家講解Bootstrap所支持的表單控件,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • js實現(xiàn)簡單鼠標(biāo)跟隨效果的方法

    js實現(xiàn)簡單鼠標(biāo)跟隨效果的方法

    這篇文章主要介紹了js實現(xiàn)簡單鼠標(biāo)跟隨效果的方法,涉及javascript鼠標(biāo)事件與坐標(biāo)獲取等相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • AlertBox 彈出層信息提示框效果實現(xiàn)步驟

    AlertBox 彈出層信息提示框效果實現(xiàn)步驟

    彈出層就是相對文檔或窗口定位的一個層,一般用來顯示提示信息、廣告等內(nèi)容,還可以配合覆蓋層來鎖定頁面。
    2010-10-10

最新評論