电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

原生js實(shí)現(xiàn)五子棋游戲

瀏覽:89日期:2024-05-06 16:05:07

本文實(shí)例為大家分享了js實(shí)現(xiàn)五子棋游戲的具體代碼,供大家參考,具體內(nèi)容如下

html:

<body> <h2>五子棋游戲</h2> <div id='box'> <div id='box01'></div> <div id='box02'>haha</div> </div></body>

css:

<style type='text/css'> *{ margin: 0; padding: 0; } body{ /*overflow: hidden;*/ margin-top: 10px; text-align: center; background-color: #C7C7C7; } #box{ position: relative; border: 1px solid; margin: 20px auto; width: 546px; height: 546px; background-color: #C7C7C7; } #box .squre{ width: 40px; height: 40px; border: 1px solid; float: left; } #box01 .squre:hover{ background-color: pink; } #box01{ position: absolute; /*border: 1px solid;*/ margin: 0 auto; width: 588px; height: 588px; /*background-color: pink;*/ /*opacity: 0.5;*/ top: -20px; left: -20px; } #box01 .qz{ width: 30px; height: 30px; border: 1px solid #C7C7C7; float: left; border-radius: 50%; margin: 5px; } #box01 .qz:hover{ background-color: pink; } #box02{ position: absolute; line-height: 546px; font-size: 50px; color: black; width: 100%; background-color: pink; display: none; opacity: 0.6; }</style>

script:

<script type='text/javascript'> window.onload = function () { let box = document.getElementById('box'); let box01 = document.getElementById('box01'); //畫棋盤 let arr = new Array(); for (let i=0;i<13;i++){ arr[i] = new Array(); for (let j=0;j<13;j++){ arr[i][j] = document.createElement('div'); arr[i][j].className = 'squre'; box.appendChild(arr[i][j]); } } //畫棋子 let arr01 = new Array(); for (let i=0;i<14;i++){ arr01[i] = new Array(); for (let j=0;j<14;j++){ arr01[i][j] = document.createElement('div'); arr01[i][j].className = 'qz'; box01.appendChild(arr01[i][j]); } } for (let m=0;m<14;m++){ for (let n=0;n<14;n++){ arr01[m][n].onclick = function () { //下棋之前統(tǒng)計(jì)一下黑白棋的個(gè)數(shù),以便黑白交換下棋 let count = 0; for (let l = 0; l < 14; l++) { for (let k = 0; k < 14; k++){if (arr01[l][k].style.backgroundColor != '') { count++;} } } // console.log(count); if (this.className == 'qz' && count % 2 == 0 && this.style.backgroundColor == '') { //下棋 this.style.backgroundColor = 'black'; //引入判斷函數(shù) // console.log(m,n); checkGame(m, n); } else if (this.className == 'qz' && count % 2 != 0 && this.style.backgroundColor == '') { //下棋 this.style.backgroundColor = 'white'; //引入判斷函數(shù) checkGame(m, n); } } } } //判斷哪方輸贏,四個(gè)方向(橫向、縱向、左斜、右斜) //m是y軸,n是x軸 let a,b; let flag = 0; let box02 = document.getElementById('box02'); function checkGame(a,b) { //判斷橫向 let qzColor = arr01[a][b].style.backgroundColor; // console.log(qzColor); for (let k=(b-4);k<=(b+4);k++){ if (k>=0 && k < 14){ if (qzColor == arr01[a][k].style.backgroundColor && arr01[a][k].style.backgroundColor != ''){ flag++; if (flag == 5){// alert(qzColor+' win!!');box02.innerHTML = qzColor+' win!!';box02.style.display = 'block'; } } else { flag = 0; } } else { flag = 0; } } //判斷縱向 for (let k=(a-4);k<=(a+4);k++){ if (k>=0 && k < 14){ if (qzColor == arr01[k][b].style.backgroundColor && arr01[k][b].style.backgroundColor != ''){ flag++; if (flag == 5){// alert(qzColor+' win!!');box02.innerHTML = qzColor+' win!!';box02.style.display = 'block'; } } else { flag = 0; } } else { flag = 0; } } //判斷左斜 let ax = (a-4);//ax用來(lái)記錄橫坐標(biāo)的變化 for (let k=(b-4);k<=(b+4);k++){ if (k>=0 && k < 14 && ax>=0 && ax<14){ if (qzColor == arr01[ax][k].style.backgroundColor && arr01[ax][k].style.backgroundColor != ''){ flag++; if (flag == 5){// alert(qzColor+' win!!');box02.innerHTML = qzColor+' win!!';box02.style.display = 'block'; } } else { flag = 0; } } else { flag = 0; } ax++; } //判斷右斜 bx = a-4; for (let k=(b+4);k>=(b-4);k--){ if (k>=0 && k < 14 && bx>=0 && bx<14){ if (qzColor == arr01[bx][k].style.backgroundColor && arr01[bx][k].style.backgroundColor != ''){ flag++; if (flag == 5){// alert(qzColor+' win!!');box02.innerHTML = qzColor+' win!!';box02.style.display = 'block'; } } else { flag = 0; } } else { flag = 0; } bx++; } } }</script>

更多有趣的經(jīng)典小游戲?qū)崿F(xiàn)專題,分享給大家:

C++經(jīng)典小游戲匯總

python經(jīng)典小游戲匯總

python俄羅斯方塊游戲集合

JavaScript經(jīng)典游戲 玩不停

javascript經(jīng)典小游戲匯總

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

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 | 全钢实验台,实验室工作台厂家-无锡市辰之航装饰材料有限公司 | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 | 厦门ISO认证|厦门ISO9001认证|厦门ISO14001认证|厦门ISO45001认证-艾索咨询专注ISO认证行业 | 河北中仪伟创试验仪器有限公司是专业生产沥青,土工,水泥,混凝土等试验仪器的厂家,咨询电话:13373070969 | 合肥展厅设计-安徽展台设计-合肥展览公司-安徽奥美展览工程有限公司 | 车载加油机品牌_ 柴油加油机厂家| 智能楼宇-楼宇自控系统-楼宇智能化-楼宇自动化-三水智能化 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 航空障碍灯_高中低光强航空障碍灯_民航许可认证航空警示灯厂家-东莞市天翔航天科技有限公司 | 电机修理_二手电机专家-河北豫通机电设备有限公司(原石家庄冀华高压电机维修中心) | 雷达液位计_超声波风速风向仪_雨量传感器_辐射传感器-山东风途物联网 | ★济南领跃标识制作公司★济南标识制作,标牌制作,山东标识制作,济南标牌厂 | 捆扎机_气动捆扎机_钢带捆扎机-沈阳海鹞气动钢带捆扎机公司 | 天津热油泵_管道泵_天津高温热油泵-天津市金丰泰机械泵业有限公司【官方网站】 | 【365公司转让网】公司求购|转让|资质买卖_股权转让交易平台 | 广西教师资格网-广西教师资格证考试网| 聚合氯化铝-碱式氯化铝-聚合硫酸铁-聚氯化铝铁生产厂家多少钱一吨-聚丙烯酰胺价格_河南浩博净水材料有限公司 | 激光内雕_led玻璃_发光玻璃_内雕玻璃_导光玻璃-石家庄明晨三维科技有限公司 激光内雕-内雕玻璃-发光玻璃 | 股指期货-期货开户-交易手续费佣金加1分-保证金低-期货公司排名靠前-万利信息开户 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 杭州网络公司_百度SEO优化-外贸网络推广_抖音小程序开发-杭州乐软科技有限公司 | 哲力实业_专注汽车涂料汽车漆研发生产_汽车漆|修补油漆品牌厂家 长沙一级消防工程公司_智能化弱电_机电安装_亮化工程专业施工承包_湖南公共安全工程有限公司 | 断桥铝破碎机_发动机破碎机_杂铝破碎机厂家价格-皓星机械 | 深圳市八百通智能技术有限公司官方网站 | 楼承板-钢筋楼承板-闭口楼承板-无锡优贝斯楼承板厂 | 河南橡胶接头厂家,河南波纹补偿器厂家,河南可曲挠橡胶软连接,河南套筒补偿器厂家-河南正大阀门 | 煤矿人员精确定位系统_矿用无线通信系统_煤矿广播系统 | 无锡门窗-系统门窗-阳光房-封阳台-断桥铝门窗厂[窗致美] | 基业箱_环网柜_配电柜厂家_开关柜厂家_开关断路器-东莞基业电气设备有限公司 | 济南画室培训-美术高考培训-山东艺霖艺术培训画室 | 工装定制/做厂家/公司_工装订做/制价格/费用-北京圣达信工装 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 自动部分收集器,进口无油隔膜真空泵,SPME固相微萃取头-上海楚定分析仪器有限公司 | 净化车间_洁净厂房_净化公司_净化厂房_无尘室工程_洁净工程装修|改造|施工-深圳净化公司 | 药品/药物稳定性试验考察箱-埃里森仪器设备(上海)有限公司 | 直读光谱仪,光谱分析仪,手持式光谱仪,碳硫分析仪,创想仪器官网 | 创绿家招商加盟网-除甲醛加盟-甲醛治理加盟-室内除甲醛加盟-创绿家招商官网 | PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | 企小优-企业数字化转型服务商_网络推广_网络推广公司 |