重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
并不是說JS代碼可以解決!
創新互聯建站是一家專業提供龍崗企業網站建設,專注與網站設計制作、成都做網站、H5高端網站建設、小程序制作等業務。10年已為龍崗眾多企業、政府機構等服務。創新互聯專業網站建設公司優惠進行中。
只是說他是靠JS代碼來判斷最小化的動作!
如果用CHROME的話,開啟JS控制臺,
把觸發暫停的函數刪除了,就可以了
掃雷在應用商店里叫Minesweeper,把鼠標放在右下角,點搜索,然后輸入Minesweeper,點下面的應用商店就找到了
document.oncontextmenu=function(){return false;}
這個是當右擊菜單事件。返回false就可以取消了,樓主試下吧!~謝謝
1)jquery.tableGen.js,這段js的作用是產生一個表格,表格中顯示數字和雷區,調用的方法很簡單,如下:
var options ={
rows:5,
cols:5,
percent:0.1
};
$("table").tableGen(options); ?
思路是:根據table的單元格的數目隨機產生percent的雷,并填充td。然后遍歷所有的td,查找周圍雷的個數來填充單元格的數字
[javascript]?view plain?copy
var?neigUp?=?new?Array();
var?neig?=?new?Array();
var?neigDw?=?new?Array();
var?cols,rows;
var?table,tds;
var?colors?=["black","blue","red","orange","yellow","green","black","black"]; ? var?mineNum?;
function($){
var?randoms?=?function(max,percent){
//?General?digital?between?0?and?max?num?times
if(!max)max?=100;
if(!percent)?percent?=0.1;
num?=?max*percent;
var?i=0;
var?arr?=?new?Array();
while(inum)???arr[i++]=Math.floor(Math.random()*max);
return?arr;
}
$.fn.tableGen?=?function(options){
var?setting?=?$.extend({
rows:10,
cols:10,
percent:0.1
},options?||?{}
);
rows?=?setting.rows;
cols?=?setting.cols;
neigUp?=?[-(cols+1),-cols,-(cols-1)];
neig?=[-1,1];
neigDw?=[cols-1,cols,cols+1]; ?
var?str?=?"";
for(var?j=0;jsetting.rows;j++){
str+="tr";
for(var?i=0;isetting.cols;i++){
str+="td"+i+"/td";
}
str+="/tr";
}
this.empty();
this.append(str);
$("td",this).addClass("org");???????//?orginal?color
//fill
var?arr?=?randoms(setting.rows*setting.cols,setting.percent);
tds?=?$("td",this);
mineNum?=?arr.length;
for(var?i=0;iarr.length;i++){
$(tds[arr[i]]).addClass("mine").html("span"+"*"+"/span").find("span").css("opacity",0);
}
//?add?tips?number?to?regular?cells
var?$this?=this;
tds.each(function(i){
if($(this).text()?==?"*")?return;
var?cnt?=?0;
var?seq?=?i;
for(var?i=0;ineig.length;i++){
var?p?=?neig[i]+seq;
if(tds[p]Math.floor(p/cols)?==?Math.floor(seq/cols)??$(tds[p]).text()?==?"*")?cnt++;
}
for(var?i=0;ineigUp.length;i++){
var?p?=?neigUp[i]+seq;
if(tds[p]Math.floor(p/cols)+1?==?Math.floor(seq/cols?)?$(tds[p]).text()?==?"*")?cnt++;
}
for(var?i=0;ineigDw.length;i++){
var?p?=?neigDw[i]+seq;
if(tds[p]Math.floor(p/cols)-1?==?Math.floor(seq/cols)??$(tds[p]).text()?==?"*")?cnt++;
}
if(!cnt)????{?cnt?=?"";?colors[""]="";}
$(this).html("span"+cnt+"/span").css("color",colors[cnt]).find("span").css("opacity",0);
});
tds.addClass("mark");
}?//?tableGen?Fn?end
)(jQuery);
2)jquery.fill.js。這段代碼的作用是定義點擊事件,每次點擊根據點擊的內容來顯示周圍的區域或者提示成功失敗
[javascript]?view plain?copy
(function($){
neig?=[-1,1];
neigDw?=[cols];
neigUp?=?[-cols];
var?recover?=function(td,table){
if(!td)???????return;
if(!td.attr)??td?=?$(td);
if(!td.hasClass("mark")){
return;
}
if(td.text()?==?""){
td.removeClass("mark").find("span").css("opacity",1);
}
else?if(td.text()?!="*"){
td.removeClass("mark").find("span").css("opacity",1);
return;
}
else?if(td.text()?==?"*"){
return;
}
var?seq?=?td.index("td",table);
tds?=?table.filter("td");
/*----------------------------*/
for(var?i=0;ineig.length;i++){
var?p?=?neig[i]+seq;
if(tds[p]Math.floor(p/cols)?==?Math.floor(seq/cols)??$(tds[p]).text()?!=?"*")?{
recover($(tds[p]),table);
}
}
for(var?i=0;ineigUp.length;i++){
var?p?=?neigUp[i]+seq;
if(tds[p]Math.floor(p/cols)+1?==?Math.floor(seq/cols?)?$(tds[p]).text()?!=?"*")?{
recover($(tds[p]),table);
}
}
for(var?i=0;ineigDw.length;i++){
var?p?=?neigDw[i]+seq;
if(tds[p]Math.floor(p/cols)-1?==?Math.floor(seq/cols)??$(tds[p]).text()?!=?"*")?{
recover($(tds[p]),table);
}
}
}
$.fn.fill?=?function(){
table?=?$(this);
tds?=$("td",table);
var?mineCnt?=?0;
tds.click(function(event){
if($(this).text()?!=?"*"){
if(event.altKey){
tds.removeClass("mark").find("span").css("opacity",1);
var?rs?=?confirm("No?Bomb?here?!Bad?Luck,Try?Again?");
if(rs){
table.tableGen(options).fill();
}
return;
}
}
if($(this).text()?==?"*"){
$(this).removeClass("mark").find("span").css("opacity",1);
var?event?=?event?||?window.event;
if(event.altKey){
mineCnt++;
if(mineCnt?==?mineNum){
var?rs?=?confirm("congratulations!Try?Again?");
if(rs){
table.tableGen(options).fill();
}
return;
}
return;
}
//?Game?over
tds.removeClass("mark").find("span").css("opacity",1);
var?rs?=?confirm("Bomb!Bad?Luck,Try?Again?");
if(rs){
table.tableGen(options);
table.fill();
}
}
else?if($(this).text()?!="*"??$(this).text()?!=""){
$(this).removeClass("mark").find("span").css("opacity",1);
}
else
recover($(this),tds);
});
};
})(jQuery);
[html]?view plain?copy
!--?!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Strict//EN"?""
head
script?type="text/javascript"?src="jquery.js"/script
script?type="text/javascript"?src="jquery.table.js"/script
script?type="text/javascript"?src="jquery.fill.js"/script
titleMine/title
style?type="text/css"
table{
table-layout:?fixed;
}
.org?{
border:1px?solid?black;
background-color:white;
overflow:?hidden;
width:?10px;
height:10px;
}
.mine{
}
.mark{
background-color:?orange;
}
.flag{
background:?url(flag.png);
background-color:?blue;
}
/style
/head
body
h3Mine?Game/h3
table?colspan='4'
/table
script?type="text/javascript"?
var?options?={
rows:5,
cols:5,
percent:0.1
};
$("table").tableGen(options);
$("table").fill();
/script
/body
/html?--