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

首頁 > 編程 > JavaScript > 正文

Javascript構建Bingo卡片游戲

2019-11-10 19:33:05
字體:
來源:轉載
供稿:網友

預備知識點: 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
久久久久久久国产精品视频| 国产精品露脸自拍| 国产精品福利网站| 日本一区二区三区在线播放| 日韩性xxxx爱| 91日韩在线视频| 国内外成人免费激情在线视频| 国产精品久久久久77777| 欧美综合国产精品久久丁香| 亚洲va久久久噜噜噜久久天堂| 日韩精品极品在线观看播放免费视频| 日韩欧美在线中文字幕| 欧美日韩色婷婷| 日韩欧美在线中文字幕| 日韩高清av在线| 国产精品久久久久久搜索| 97香蕉久久超级碰碰高清版| 欧美激情亚洲激情| 色婷婷av一区二区三区久久| 色综合91久久精品中文字幕| 亚洲sss综合天堂久久| 91精品国产成人| 国产精品自产拍在线观看中文| 中文字幕最新精品| 成人xvideos免费视频| 97在线看福利| 久久男人av资源网站| 欧美激情精品久久久| 亚洲免费电影一区| 亚洲欧美制服另类日韩| 欧美人在线观看| 欧美巨乳在线观看| 亚洲福利影片在线| 国产精品毛片a∨一区二区三区|国| 97视频在线观看视频免费视频| 91嫩草在线视频| 亚洲精品自拍第一页| 欧美亚洲国产精品| 欧美成人性色生活仑片| 亚洲欧美精品伊人久久| 中文字幕日韩欧美| 精品国产一区二区三区久久久| 欧美成人合集magnet| 亚洲老头老太hd| 欧美猛男性生活免费| 91久久国产综合久久91精品网站| 久久不射热爱视频精品| 欲色天天网综合久久| 在线精品视频视频中文字幕| 国产不卡av在线| 欧美成人激情视频| 欧美精品免费看| 久久久久久久国产精品视频| 亚洲欧美中文日韩在线v日本| 欧美老女人xx| 狠狠躁夜夜躁人人爽天天天天97| 亚洲美女性生活视频| 最近中文字幕mv在线一区二区三区四区| 日韩成人免费视频| 欧美大胆a视频| 色婷婷综合成人av| 国模吧一区二区| 国产欧美一区二区三区久久| 国产精品久久国产精品99gif| 国产成人综合精品| 国产日韩欧美在线播放| 国产欧美一区二区三区久久人妖| 亚洲人a成www在线影院| 亚洲网站视频福利| 成人激情视频在线播放| 国产欧美中文字幕| 国产精品久久久久久婷婷天堂| 欧美日韩亚洲视频一区| 88xx成人精品| 久久人91精品久久久久久不卡| 色综合视频一区中文字幕| 亚洲人成绝费网站色www| 久久99久久久久久久噜噜| 中文字幕欧美精品日韩中文字幕| 日韩精品亚洲元码| 国产综合在线视频| 亚洲欧美另类国产| 国产在线观看精品| 久久久久亚洲精品成人网小说| 亚洲最大福利视频网| 91国内精品久久| 日韩国产激情在线| 日韩精品中文字幕久久臀| 日本一区二三区好的精华液| 国产精品99久久久久久久久| 不卡毛片在线看| 欧美在线影院在线视频| 中文字幕精品www乱入免费视频| 精品日本美女福利在线观看| 国产自产女人91一区在线观看| 97不卡在线视频| 久久免费福利视频| 欧美性xxxx18| 一区二区三区回区在观看免费视频| 欧美日韩国产成人高清视频| 日韩精品免费观看| 国产精品爽爽爽爽爽爽在线观看| 国产精品电影久久久久电影网| 国产精品久久久久久久久久三级| 裸体女人亚洲精品一区| 亚洲国产美女久久久久| 国产成人精品久久| 97精品免费视频| 欧美性猛交xxxx久久久| 亚洲毛茸茸少妇高潮呻吟| 2021国产精品视频| 日产精品99久久久久久| 亚洲国产高清福利视频| 欧美另类暴力丝袜| 在线日韩av观看| 精品久久香蕉国产线看观看亚洲| 亚洲午夜性刺激影院| 久久久成人精品| 国内精品久久久久影院 日本资源| 久久久日本电影| 26uuu亚洲伊人春色| 精品美女久久久久久免费| 国产精品视频永久免费播放| 日韩av在线免费| 久久综合国产精品台湾中文娱乐网| 日韩在线播放视频| 国产精品自产拍在线观看| 91国自产精品中文字幕亚洲| 97**国产露脸精品国产| 91青草视频久久| 久久综合五月天| 亚洲乱码av中文一区二区| 成人久久精品视频| 国产精品69久久久久| 精品免费在线观看| 亚洲国产日韩欧美综合久久| 欧美日韩另类在线| 国产中文欧美精品| 狠狠综合久久av一区二区小说| 日韩欧美在线视频日韩欧美在线视频| 成人免费福利视频| 26uuu另类亚洲欧美日本一| 亚洲欧洲美洲在线综合| 久久这里只有精品视频首页| 国产精品电影一区| 国产一区二区三区在线观看网站| 欧美日本啪啪无遮挡网站| 亚洲成人精品视频在线观看| 亚洲国产精品成人av| 日韩精品在线免费| 91精品国产色综合久久不卡98| 91精品国产91久久| 亚洲国产精品高清久久久| 亚洲欧美成人一区二区在线电影| 96pao国产成视频永久免费| 国产美女主播一区| 日韩电影中文字幕| 精品国产电影一区| 法国裸体一区二区| 亚洲色图五月天| 成人欧美一区二区三区在线| 亚洲国产成人精品久久久国产成人一区| 欧美激情精品久久久久久蜜臀| 丝袜美腿精品国产二区|