小程序开发入门_JS完成的走迷宫小游戏完好实例

  • 栏目:行业动态 时间:2021-01-11 16:04 分享新闻到:
<返回列表

JS实现的走迷宫小游戏完整实例       这篇文章主要介绍了JS实现的走迷宫小游戏,涉及javascript键盘事件响应及页面元素动态变换相关操作技巧,需要的朋友可以参考下

本文实例讲述了JS实现的走迷宫小游戏。分享给大家供大家参考,具体如下:

先来看看运行效果截图:

完整实例代码如下:

 !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "TR/xhtml1/DTD/xhtml1-transitional.dtd" 
 html xmlns="1999/xhtml" 
 head 
 title JS打造的走迷宫游戏 /title 
 /head 
 body 
 SCRIPT 
function ShowMenu(bMenu) {
document.all.idFinder.style.display = (bMenu) "none" : "block"
document.all.idMenu.style.display = (bMenu) "block" : "none"
idML.className = (bMenu) "cOn" : "cOff"
idRL.className = (bMenu) "cOff" : "cOn"
return false
 /SCRIPT 
 STYLE 
A.cOn {text-decoration:none;font-weight:bolder}
#article {font: 12pt Verdana, geneva, arial, sans-serif; background: white; color: black; padding: 10pt 15pt 0 5pt}
#article P.start {text-indent: 0pt}
#article P {margin-top:0pt;font-size:10pt;text-indent:12pt}
#article #author {margin-bottom:5pt;text-indent:0pt;font-style: italic}
#pageList P {padding-top:10pt}
#article H3 {font-weight:bold}
#article DL, UL, OL {font-size: 10pt}
 /STYLE 
 SCRIPT 
function addList(url,desc) {
if ((navigator.appName=="Netscape") || (parseInt(navigator.appVersion) =4)) {
var w=window.open("","_IDHTML_LIST_","top=0,left=0,width=475,height=150,history=no,menubar=no,status=no,resizable=no")
var d=w.document
if (!w._init) {
d.open()
d.write(" TITLE Loading... /TITLE EM Loading... /EM ")
d.close()
w.opener=self
window.status="Personal Assistant (Adding): " + desc
} else {
window.status=w.addOption(url,desc)
w.focus()
alert("Your browser does not support the personal assistant.")
return false
// -- 
 /SCRIPT 
 STYLE TYPE="text/css" 
#board TD {width: 15pt; height: 15pt; font-size: 2pt; }
TD.foot {font-size: 10pt;}
#board TD.start {font-size: 8pt; border-left: 2px black solid; background:yellow; border-top: 2px black solid;text-align: center; color: red}
#board TD.end {font-size: 8pt; text-align: center; color: green}
#message {margin: 0pt; padding: 0pt; text-align: center}
 /STYLE 
 SCRIPT LANGUAGE="JavaScript" 
var maze = new Array()
var sides = new Array("Border-Top", "Border-Right")
for (var rows=0; rows rows++)
maze[rows] = new Array()
maze[0][0] = new Array(1,1,1,1,1,1,1,1,1,1,1,1)
maze[0][1] = new Array(0,0,1,0,1,0,0,0,0,1,0,1)
maze[1][0] = new Array(1,0,0,0,1,0,1,1,1,0,1,1)
maze[1][1] = new Array(0,1,1,0,0,1,1,0,0,1,0,1)
maze[2][0] = new Array(1,0,1,0,1,0,0,1,1,0,1,1)
maze[2][1] = new Array(0,0,0,0,1,1,1,0,0,0,0,1)
maze[3][0] = new Array(0,1,1,1,1,1,0,0,0,0,1,1)
maze[3][1] = new Array(1,0,0,1,0,0,0,1,1,0,0,1)
maze[4][0] = new Array(0,0,0,0,0,0,1,1,1,1,1,1)
maze[4][1] = new Array(1,1,1,1,1,0,0,0,0,0,1,1)
maze[5][0] = new Array(0,0,0,0,1,0,1,1,1,1,0,0)
maze[5][1] = new Array(1,1,1,1,1,1,0,0,0,1,0,1)
maze[6][0] = new Array(0,0,0,0,0,0,1,1,0,1,0,1)
maze[6][1] = new Array(1,1,1,1,1,1,0,0,0,1,0,1)
maze[7][0] = new Array(1,0,1,0,0,0,1,0,1,1,0,1)
maze[7][1] = new Array(1,1,1,0,1,0,0,1,0,1,1,1)
maze[8][0] = new Array(0,0,0,1,0,0,1,1,0,0,0,0)
maze[8][1] = new Array(0,1,0,1,1,0,0,0,1,1,0,1)
maze[9][0] = new Array(0,0,0,0,0,1,1,1,1,0,1,1)
maze[9][1] = new Array(1,1,1,1,0,0,0,0,0,1,1,1)
maze[10][0] = new Array(0,0,0,0,0,1,1,1,1,1,0,0)
maze[10][1] = new Array(1,1,1,0,1,0,0,0,0,1,0,1)
maze[11][0] = new Array(0,0,1,1,1,1,1,1,1,0,0,0)
maze[11][1] = new Array(1,0,1,0,0,0,0,0,0,0,1,1)
maze[12][0] = new Array(0,0,0,0,0,1,1,1,1,0,1,0)
maze[12][1] = new Array(1,1,0,1,0,0,0,1,0,0,1,1)
function testNext(nxt) {
if ((board.rows[start.rows].cells[start.cols].style.backgroundColor=="yellow") (nxt.style.backgroundColor=='yellow')) {
message.innerText="I see you changed your mind."
board.rows[start.rows].cells[start.cols].style.backgroundColor=""
return false
return true
function moveIt() {
if (!progress) return
switch (event.keyCode) {
case 37: // left
if (maze[start.rows][1][start.cols-1]==0) {
if (testNext(board.rows[start.rows].cells[start.cols-1]))
message.innerText="Going west..."
start.cols--
document.all.board.rows[start.rows].cells[start.cols].style.backgroundColor="yellow"
} else
message.innerText="Ouch... you can't go west."
break;
case 38: // up
if (maze[start.rows][0][start.cols]==0) {
if (testNext(board.rows[start.rows-1].cells[start.cols]))
message.innerText="Going north..."
start.rows--
document.all.board.rows[start.rows].cells[start.cols].style.backgroundColor="yellow"
} else
message.innerText="Ouch... you can't go north."
break;
case 39: // right
if (maze[start.rows][1][start.cols]==0) {
if (testNext(board.rows[start.rows].cells[start.cols+1]))
message.innerText="Going east..."
start.cols++
document.all.board.rows[start.rows].cells[start.cols].style.backgroundColor="yellow"
message.innerText="Ouch... you can't go east."
break;
case 40: //down
if (maze[start.rows+1]==null) return
if (maze[start.rows+1][0][start.cols]==0) {
if (testNext(board.rows[start.rows+1].cells[start.cols]))
message.innerText="Going south..."
start.rows++
document.all.board.rows[start.rows].cells[start.cols].style.backgroundColor="yellow"
} else
message.innerText="Ouch... you can't go south."
break;
if (document.all.board.rows[start.rows].cells[start.cols].innerText=="end") {
message.innerText="You Win!"
progress=false
 /SCRIPT 
 P ALIGN=center 请使用键盘上的→←↑↓键进行游戏 /P BR 
 p TABLE ID=board ALIGN=CENTER CELLSPACING=0 CELLPADDING=0 
 SCRIPT LANGUAGE="JavaScript" 
for (var row = 0; row maze.length; row++) {
document.write(" TR ")
for (var col = 0; col maze[row][0].length; col++) {
document.write(" TD STYLE='")
for (var cell = 0; cell cell++) {
if (maze[row][cell][col]==1)
document.write(sides[cell]+": 2px black solid;")
if ((0==col) (0!=row))
document.write("border-left: 2px black solid;")
if (row==maze.length-1)
document.write("border-bottom: 2px black solid;")
if ((0==row) (0==col))
document.write(" background-color:yellow;' ")
if ((row==maze.length-1) (col==maze[row][0].length-1))
document.write("' ")
document.write("' /TD ")
document.write(" /TR ")
var start = new Object
start.rows = 0
start.cols = 0
progress=true
document.onkeydown = moveIt;
 /SCRIPT 
 /TABLE 
 P ID="message" /P 
 br / 
 /body 
 /html 

凡科抠图:这里再为大家推荐另一款本站的迷宫在线游戏供大家参考,同样是基于JS实现的:

在线迷宫小游戏:

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》及《》

希望本文所述对大家JavaScript程序设计有所帮助。


分享新闻到:

更多阅读

小程序开发入门_JS完成的走迷宫小游戏完

行业动态 2021-01-11
JS完成的走迷宫游戏游戏详细案例 本文关键详细介绍了JS完成的走迷宫游戏游戏,涉及到...
查看全文

广州凡科互联网科技股份有限公司招聘打

行业动态 2021-01-11
招聘人数:4职位信息岗位职责:1.负责仓库各类货物管理工作。2.负责仓库的验货、配货,产品...
查看全文

广州凡科互联网科技股份有限公司招聘商

行业动态 2021-01-11
招聘人数:18职位信息岗位职责:1、协助商务总监进行业务开发;2、协助维护现有客户以及开...
查看全文
返回全部新闻


区域站点: 南丰县小程序前端设计   南宫市有赞小程序   囊谦县小程序下载安装   南和县小程序模板源码   南华县小程序前端设计   南江县有赞小程序   南京市小程序下载安装   南靖县小程序模板源码   南康市小程序前端设计   南乐县有赞小程序   南陵县小程序下载安装   南宁市小程序模板源码   南平市小程序前端设计   南皮县有赞小程序   南市区小程序下载安装   南通市小程序模板源码   南投县小程序前端设计   南雄市有赞小程序   南溪县小程序下载安装   南阳市小程序模板源码   南漳县小程序前端设计   南召县有赞小程序   南郑县小程序下载安装   那坡县小程序模板源码   那曲县小程序前端设计   纳雍县有赞小程序   讷河市小程序下载安装   内黄县小程序模板源码   内江市小程序前端设计   内丘县有赞小程序   内乡县小程序下载安装   嫩江市小程序模板源码   聂荣县小程序前端设计   尼玛县有赞小程序   尼木县小程序下载安装   宁安市小程序模板源码   宁波市小程序前端设计   宁城县有赞小程序   宁德市小程序下载安装   宁都县小程序模板源码   宁国市小程序前端设计   宁海县有赞小程序   宁化县小程序下载安装   宁晋县小程序模板源码   宁陵县小程序前端设计   宁明县有赞小程序   宁南县小程序下载安装   宁强县小程序模板源码   宁陕县小程序前端设计   宁武县有赞小程序   宁乡市小程序下载安装   宁阳县小程序模板源码   宁远县小程序前端设计   农安县有赞小程序   磐安县小程序下载安装   盘锦市小程序模板源码   盘山县小程序前端设计   磐石市有赞小程序   盘州市小程序下载安装   蓬安县小程序模板源码   澎湖县小程序前端设计   蓬莱市有赞小程序   彭山县小程序下载安装   蓬溪县小程序模板源码   彭阳县小程序前端设计   彭泽县有赞小程序   彭州市小程序下载安装   偏关县小程序模板源码   平安县小程序前端设计   平昌县有赞小程序   平定县小程序下载安装   屏东县小程序模板源码   平度市小程序前端设计   平果县有赞小程序   平和县小程序下载安装   平湖市小程序模板源码   平江县小程序前端设计   平乐县有赞小程序   平凉市小程序下载安装   平利县小程序模板源码   平罗县小程序前端设计   平陆县有赞小程序   屏南县小程序下载安装   平泉市小程序模板源码   屏山县小程序前端设计   平顺县有赞小程序   平塘县小程序下载安装   平潭县小程序模板源码   平武县小程序前端设计   萍乡市有赞小程序   平乡县小程序下载安装   平阳县小程序模板源码   平遥县小程序前端设计   平阴县有赞小程序   平邑县小程序下载安装   平远县小程序模板源码   平舆县小程序前端设计   皮山县有赞小程序   普安县小程序下载安装   浦北县小程序模板源码   浦城县小程序前端设计   普洱市有赞小程序   普格县小程序下载安装   浦江县小程序模板源码   普兰县小程序前端设计   普宁市有赞小程序   莆田市小程序下载安装   迁安市小程序模板源码   乾安县小程序前端设计   潜江市有赞小程序   潜山市小程序下载安装  

友情链接: 微信小程序开发框 凡科小程序 免费打卡小程序怎 微信小程序 游戏 手机版

Copyright © 2002-2020 小程序下载安装_小程序模板源码_小程序前端设计_有赞小程序_线上签到小程序 版权所有 (网站地图) 备案号:粤ICP备10235580号