亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Javascript構建Bingo卡片游戲

2019-11-10 18:37:10
字體:
來源:轉載
供稿:網友

預備知識點: 1、 “< table >”表示表格, “< tr >”表示表格的開始一行, “< th>”表示表格中列的標題單元格, “< td>”表示表格中的每個單元格 2、常用的字符含義 ”&nbsp“表示空格 & & < < > > " ” &qpos; ‘

一、靜態bingo區

程序代碼區: Html片段:

<!DOCTYPE html><html><head><title>Make Your Own Bingo Card</title><link rel="stylesheet" href="script01.CSS"><script src="script01.js"></script></head><body><h1>Create A Bingo Card</h1><table><tr><th>B</th><th>I</th><th>N</th><th>G</th><th>O</th></tr><tr><td id="square0">&nbsp;</td> <!--&nbsp表示空格--><td id="square5">&nbsp;</td><td id="square10">&nbsp;</td><td id="square14">&nbsp;</td><td id="square19">&nbsp;</td></tr><tr><td id="square1">&nbsp;</td><td id="square6">&nbsp;</td><td id="square11">&nbsp;</td><td id="square15">&nbsp;</td><td id="square20">&nbsp;</td></tr><tr><td id="square2">&nbsp;</td><td id="square7">&nbsp;</td><td id="free">Free</td><td id="square16">&nbsp;</td><td id="square21">&nbsp;</td></tr><tr><td id="square3">&nbsp;</td><td id="square8">&nbsp;</td><td id="square12">&nbsp;</td><td id="square17">&nbsp;</td><td id="square22">&nbsp;</td></tr><tr><td id="square4">&nbsp;</td><td id="square9">&nbsp;</td><td id="square13">&nbsp;</td><td id="square18">&nbsp;</td><td id="square23">&nbsp;</td></tr></table><p><a href="script01.html" id="reload">Click here</a> to create a new card</p></body></html>

css片段:

body {background-color: white;color: black;font-size: 20px;font-family: "Lucida Grande", Verdana,Arial, Helvetica, sans-serif;}h1, th {font-family: Georgia, "Times New Roman",Times, serif;}h1 {font-size: 28px;}table {border-collapse: collapse;}th, td {padding: 10px;border: 2px #666 solid;text-align: center;width: 20%;}#free, .pickedBG {background-color: #f66;<!--控制Free的鍵-->}.winningBG {background-image:url(images/redFlash.gif);}

js的片段

window.onload = initAll;//窗口的顯示加載,調用initAll()函數,事件處理程序調用函數function initAll() {for (var i=0; i<24; i++) {var newNum = Math.floor(Math.random() * 75) + 1;//javaScript 命令Math.random()生成0~1 的一個隨機數;floor運算會獲得結果的整數部,最后獲得1到最大值+1的結果document.getElementById("square" + i).innerHTML = newNum;}}

靜態的展示結果 這里寫圖片描述

修改js的代碼:使用值傳遞的方式:

window.onload = initAll;function initAll() {for (var i=0; i<24; i++) {setSquare(i);}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var newNum = Math.floor(Math.random() * 75) + 1;document.getElementById(currSquare). innerHTML = newNum;}

探測對象:對象探測拒絕這種老式瀏覽器(Mac 的Netscape 4)并顯示這個錯誤消息。

window.onload = initAll;function initAll() {if (document.getElementById) {for (var i=0; i<24; i++) {setSquare(i);}}else {alert("Sorry, your browser doesn't support this script");}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var newNum = Math.floor (Math.random() * 75) + 1;document.getElementById(currSquare).innerHTML = newNum;}

**消除重復的數字:更新數組 將數組的內容改為存儲當前值是一種非常強大的技術**

window.onload = initAll;var usedNums = new Array(76);function initAll() {if (document.getElementById) {for (var i=0; i<24; i++) {setSquare(i);}}else {alert("Sorry, your browser doesn't support this script");}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var colPlace = new Array(0,0,0,0,0,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4);var colBasis = colPlace [thisSquare] * 15;var newNum = colBasis + getNewNum() + 1;if (!usedNums[newNum]) {usedNums[newNum] = true;document.getElementById(currSquare).innerHTML = newNum;}}function getNewNum() {return Math.floor(Math.random() * 15);}

還允許用戶單擊頁面底部的鏈接來重新運行腳本,這樣就可以完全在 瀏覽器中生成Bingo 卡片,而不需要從服務器重新加載頁面。這向用戶提供了快速的響應,而且不會產生服務器負載。 讓用戶有能力自己運行腳本:

window.onload = initAll;var usedNums = new Array(76);function initAll() {if (document.getElementById) {document.getElementById("reload").onclick = anotherCard;newCard();}else {alert("Sorry, your browser doesn't support this script");}}function newCard() {for (var i=0; i<24; i++) {setSquare(i);}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var colPlace = new Array(0,0,0,0,0,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4);var colBasis = colPlace thisSquare] * 15;var newNum;do {newNum = colBasis + getNewNum() + 1;}while (usedNums[newNum]);usedNums[newNum] = true;document.getElementById(currSquare).innerHTML = newNum;}function getNewNum() {return Math.floor(Math.random() * 15);}function anotherCard() {for (var i=1; i<usedNums.length; i++) {usedNums[i]=false;}newCard();return false;}

通過Javascript 添加一個類,使代碼可以利用CSS 的功能

window.onload = initAll;var usedNums = new Array(76);function initAll() {if (document.getElementById) {document.getElementById("reload").onclick = anotherCard;newCard();}else {alert("Sorry, your browser doesn't support this script");}}function newCard() {for (var i=0; i<24; i++) {setSquare(i);}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var colPlace = new Array(0,0,0,0,0,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4);var colBasis = colPlace [thisSquare] * 15;var newNum;do {newNum = colBasis + getNewNum() + 1;}while (usedNums[newNum]);usedNums[newNum] = true;document.getElementById(currSquare).innerHTML = newNum;document.getElementById(currSquare).className = "";document.getElementById(currSquare).onmousedown = toggleColor;}function getNewNum() {return Math.floor(Math.random() * 15);}function anotherCard() {for (var i=1; i<usedNums.length; i++) {usedNums[i] = false;}newCard();return false;}function toggleColor(evt) {if (evt) {var thisSquare = evt.target;}else {var thisSquare = window.event.srcElement;}if (thisSquare.className == "") {thisSquare.className = "pickedBG";}else {thisSquare.className = "";}}

這個腳本使用復雜的數學計算判斷獲勝組合

window.onload = initAll;var usedNums = new Array(76);function initAll() {if (document.getElementById) {document.getElementById("reload").onclick = anotherCard;newCard();}else {alert("Sorry, your browser doesn't support this script");}}function newCard() {for (var i=0; i<24; i++) {setSquare(i);}}function setSquare(thisSquare) {var currSquare = "square" + thisSquare;var colPlace = new Array(0,0,0,0,0,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4);var colBasis = colPlace [thisSquare] * 15;var newNum;do {newNum = colBasis + getNewNum() + 1;}while (usedNums[newNum]);usedNums[newNum] = true;document.getElementById(currSquare).innerHTML = newNum;document.getElementById(currSquare).className = "";document.getElementById(currSquare).onmousedown = toggleColor;}function getNewNum() {return Math.floor(Math.random() * 15);}function anotherCard() {for (var i=1; i<usedNums.length; i++) { usedNums[i] = false;1}newCard();return false;}function toggleColor(evt) {if (evt) {var thisSquare = evt.target;}else {var thisSquare = window.event.srcElement;}if (thisSquare.className == "") {thisSquare.className = "pickedBG";}else {thisSquare.className = "";}checkWin();}function checkWin() {var winningOption = -1;var setSquares = 0;var winners = new Array(31,992,15360,507904,541729,557328,1083458,2162820,4329736,8519745,8659472,16252928);for (var i=0; i<24; i++) {var currSquare = "square" + i;if (document.getElementById (currSquare).className != "") {document.getElementById (currSquare).className = "pickedBG";setSquares = setSquares | Math.pow(2,i);}}for (var i=0; i<winners.length; i++) {if ((winners[i] & setSquares) == winners[i]) {winningOption = i;}}if (winningOption > -1) {for (var i=0; i<24; i++) {if (winners[winningOption] & Math.pow(2,i)) {currSquare = "square" + i;document.getElementById (currSquare).className = "winningBG";}}}}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久视频免费观看| 91久久精品日日躁夜夜躁国产| 欧美xxxx做受欧美.88| 岛国精品视频在线播放| 国产精品入口尤物| 大伊人狠狠躁夜夜躁av一区| 欧美猛少妇色xxxxx| 国产精品久久久久久久美男| 91精品免费久久久久久久久| 欧美激情免费观看| 91精品国产777在线观看| 亚洲人成网站免费播放| 亚洲精品福利免费在线观看| 国产精品wwww| 日本欧美爱爱爱| 国产精品麻豆va在线播放| 亚洲激情在线视频| 国产午夜精品全部视频在线播放| 久久视频在线直播| 精品久久香蕉国产线看观看gif| 亚洲欧美日韩网| 久久久久久九九九| 国产丝袜一区二区三区免费视频| 在线视频国产日韩| 国产精品视频在线观看| 亚洲欧洲一区二区三区久久| 国产精品日韩av| 久久精品国产96久久久香蕉| 国产盗摄xxxx视频xxx69| 精品久久久久久久中文字幕| 亚洲欧洲第一视频| 国产精品久久久久久久久影视| 欧美一级免费视频| 美女扒开尿口让男人操亚洲视频网站| 亚洲最大的网站| 欧美性69xxxx肥| 欧美一区三区三区高中清蜜桃| 亚洲精品国产电影| 一区二区av在线| 粗暴蹂躏中文一区二区三区| 亚洲第一精品久久忘忧草社区| 亚洲视频在线观看网站| 91高清免费在线观看| 欧美多人乱p欧美4p久久| 亚洲精品成a人在线观看| 欧美美女15p| 日韩av在线免费看| 亚洲伊人久久综合| 草民午夜欧美限制a级福利片| 久久夜色精品国产| 隔壁老王国产在线精品| 午夜精品久久久久久久久久久久| 欧美激情免费在线| 国产69精品99久久久久久宅男| 亚洲偷欧美偷国内偷| 亚洲一区精品电影| 国产精品视频1区| 国内精品久久久久久久久| 91在线免费网站| 欧美一区二区大胆人体摄影专业网站| 成人免费高清完整版在线观看| 亚洲色图校园春色| 亚洲性猛交xxxxwww| 色噜噜亚洲精品中文字幕| 久久久亚洲成人| 久久国产精彩视频| 亚洲欧美精品中文字幕在线| 午夜精品一区二区三区av| 成人免费大片黄在线播放| 欧美日韩国产综合视频在线观看中文| 亚洲日韩欧美视频一区| 国产一区二区精品丝袜| 久久久久久久久久婷婷| www亚洲欧美| 日韩av在线免播放器| 欧美成年人网站| 最近2019中文免费高清视频观看www99| 欧美视频不卡中文| 国产精品高潮呻吟视频| 91免费欧美精品| 亚洲一区二区久久| 日韩精品亚洲精品| 亚洲摸下面视频| 欧美一区二粉嫩精品国产一线天| 青青久久av北条麻妃海外网| 亚洲系列中文字幕| 日韩欧美精品网址| 亚洲精品天天看| www国产精品视频| 91极品视频在线| 欧美中文字幕视频在线观看| 日韩中文综合网| 一个人看的www久久| 这里只有精品视频在线| 中文字幕亚洲精品| 国产精品久久二区| 在线一区二区日韩| 欧美中文字幕在线| 国产成人综合精品| 久久久国产精彩视频美女艺术照福利| 在线日韩第一页| 国产福利视频一区二区| 国产精品亚洲激情| 91精品国产乱码久久久久久久久| 中文字幕无线精品亚洲乱码一区| 在线国产精品视频| 成人做爰www免费看视频网站| 91高清视频免费观看| 国产日韩欧美在线观看| www国产亚洲精品久久网站| 国产999在线观看| 色噜噜狠狠狠综合曰曰曰88av| 国产成人av在线播放| 久久久久久久成人| 日韩性xxxx爱| 亚洲黄色www网站| 亚洲最大av在线| 欧美壮男野外gaytube| 亚洲福利视频久久| 久久久久久91| 成人精品视频在线| 久久成年人免费电影| 亚洲人线精品午夜| 亚洲日韩欧美视频一区| 2019中文字幕免费视频| 国产精品久久久av| 91老司机在线| 国产精品久久久久久久av大片| 欧美激情亚洲国产| 欧美日韩在线视频一区二区| 欧美精品手机在线| 欧美日韩国产中文精品字幕自在自线| 91久久精品日日躁夜夜躁国产| 久久久久久久久爱| 久久成年人免费电影| 亚洲在线一区二区| 成人在线国产精品| 日韩在线视频播放| 日韩在线观看免费全| 92福利视频午夜1000合集在线观看| 91精品国产高清久久久久久| 日韩在线资源网| 91av视频在线| 伊人久久久久久久久久久久久| 亚洲视频电影图片偷拍一区| 国产高清在线不卡| 久久精品亚洲94久久精品| 国产精品视频内| 在线观看国产精品淫| 国产精品亚洲激情| 亚洲成人网在线观看| 2019中文字幕全在线观看| 欧美精品成人91久久久久久久| 日韩在线播放一区| 亚洲欧洲美洲在线综合| 国产精品久久久久久久久久小说| 亚洲人在线视频| 懂色aⅴ精品一区二区三区蜜月| 91高清在线免费观看| 欧美肥臀大乳一区二区免费视频| 日韩中文字幕在线精品| 最近2019中文字幕在线高清| 日韩欧美精品网址| 26uuu亚洲伊人春色|