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

首頁 > 編程 > HTML > 正文

html5 canvas-2.用canvas制作一個猜字母的小游戲

2024-08-26 00:15:00
字體:
來源:轉載
供稿:網友
今天我們要用canvas制作一個猜字母的小游戲,先來張效果圖。
 
游戲設計很簡單,系統會隨機從a-z的26個字母中選擇一個保存起來,你鍵盤輸入一個字母,系統會提示你正確字符比你當前輸入字母小還是大,直到你輸入正確的字母游戲才結束。
下面介紹js代碼中需要用到的一些變量及其他們的含義,系統會在開始的時候初始化這些變量。
guesses:用戶猜字母的次數;
message:幫助玩家如何玩游戲的說明;
letters:保存26個英文字母的數組;
today:當前時間;
letterToGuess:系統選中的字母,也就是你需要猜中的字母;
higherOrLower:提示用戶當前輸入的字母比答案大還是小;
lettersGuessed:用戶已經猜過的字母;
gameOver:游戲是否結束。

復制代碼 代碼如下:www.CuoXIn.com

var guesses = 0;
var message = "Guess The Letter From a (lower) to z (higher)";
var letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
var today = new Date();
var letterToGuess = "";
var higherOrLower = "";
var lettersGuessed;
var gameOver = false;

下面我們介紹響應鍵盤彈起的事件,用來判斷用戶輸入的字母是否是正確答案:

復制代碼 代碼如下:www.CuoXIn.com

$(window).bind('keyup', eventKeyPressed);


復制代碼 代碼如下:www.CuoXIn.com

function eventKeyPressed(e) {
//首先判斷游戲是否結束
if (!gameOver) {
//獲取輸入字母
var letterPressed = String.fromCharCode(e.keyCode);
//做小寫處理
letterPressed = letterPressed.toLowerCase();
//游戲次數加1
guesses++;
//把輸入字母保存到已猜字母數組
lettersGuessed.push(letterPressed);
//判斷輸入字母和答案是否一致,一致則游戲結束
if (letterPressed == letterToGuess) {
gameOver = true;
} else {
//獲取答案在字母數組中的位置
var letterIndex = letters.indexOf(letterToGuess);
//獲取輸入字母在字母數組中的位置
var guessIndex = letters.indexOf(letterPressed);
Debugger.log(guessIndex);
//判斷大小
if (guessIndex < 0) {
higherOrLower = "That is not a letter";
} else if (guessIndex > letterIndex) {
higherOrLower = "Letter is Lower than you entered";
} else {
higherOrLower = "Letter is Higher than you entered";
}
}
//重繪canvas
drawScreen();
}
}

這里需要注意的一點是,當我們需要對canvas中的圖像做修改時,一般會重新繪制整個canvas對象。所以在我們每猜一次字母,都會執行drawScreen把整個canvas上的所有對象都繪制一遍。
下面我們看看drawScreen都干了什么。

復制代碼 代碼如下:www.CuoXIn.com

function drawScreen() {
//background
context.fillStyle = '#ffffaa';
context.fillRect(0, 0, 500, 300);
//box
context.strokeStyle = '#000000';
context.strokeRect(5, 5, 490, 290);
context.textBaseLine = 'top';
//date
context.fillStyle = '#000000';
context.font = '10px_sans';
context.fillText(today, 150, 20);
//message
context.fillStyle = '#ff0000';
context.font = '14px_sans';
context.fillText(message, 125, 40);
//guesses
context.fillStyle = '#109910';
context.font = '16px_sans';
context.fillText('Guesses:' + guesses, 215, 60);
//higher or lower
context.fillStyle = '#000000';
context.font = '16px_sans';
context.fillText('Higher or Lower:' + higherOrLower, 150, 125);
//letters guessed
context.fillStyle = '#ff0000';
context.font = '16px_sans';
context.fillText('Letters Guessed:' + lettersGuessed.toString(), 10, 260);
if (gameOver) {
context.fillStyle = "#FF0000";
context.font = "40px _sans";
context.fillText("You Got It!", 150, 180);
}
}

代碼很簡單,就是繪制背景,還有文字信息。下面我們介紹導入圖像的功能,當我們點擊“Export Canvas Image”按鈕的時候,會打開一個新的頁面,顯示當前的圖像。注意toDataURL()方法,他會返回一個64位的png圖片數據。

復制代碼 代碼如下:www.CuoXIn.com

$('#createImageData').click(function () {
window.open(theCanvas.toDataURL(), 'canvasImage', 'left=0,top=0,width=' + theCanvas.width + ',height=' + theCanvas.height + ',toolbar=0,resizab le=0');
});

大家還是直接運行demo,查看最終效果吧。demo下載地址:HTML5/">html5canvas.guessTheLetter.zip

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美多人乱p欧美4p久久| 国产一区在线播放| 国产亚洲精品久久久优势| 久久露脸国产精品| 国产精品久久久久不卡| 日韩美女视频免费看| 国产亚洲精品成人av久久ww| 久久久爽爽爽美女图片| 日韩电视剧免费观看网站| 国产视频精品在线| 国产精品丝袜久久久久久不卡| 国产欧美日韩精品专区| 欧美日韩另类在线| 国产精品中文字幕久久久| 亚洲第五色综合网| 在线午夜精品自拍| 久久久久久伊人| 欧美成人中文字幕| 成人激情视频小说免费下载| 欧美又大又硬又粗bbbbb| 日韩精品视频免费在线观看| 日本伊人精品一区二区三区介绍| 91亚洲精品一区二区| 精品香蕉一区二区三区| 日韩中文字幕亚洲| 国产小视频91| 国产精品海角社区在线观看| 欧美午夜性色大片在线观看| 91在线观看免费高清完整版在线观看| 伊人久久五月天| 亚洲人成欧美中文字幕| 亚洲天堂av综合网| 欧美xxxx做受欧美| 日韩精品中文字幕在线播放| 国产97色在线|日韩| 国产亚洲一区二区在线| 亚洲免费电影一区| 亚洲尤物视频网| 久久久国产视频| 中文字幕日韩欧美精品在线观看| 国产精品9999| 久久久精品免费视频| 精品一区二区电影| 日韩欧美高清视频| 一区二区欧美激情| 久久免费在线观看| 91久久精品日日躁夜夜躁国产| 中文字幕久久精品| 九九热精品视频在线播放| 欧美日韩国产中字| 日韩精品久久久久久福利| 日韩色av导航| 麻豆乱码国产一区二区三区| 日韩精品极品在线观看| www国产亚洲精品久久网站| 亚洲自拍偷拍第一页| 欧美亚洲激情视频| 亚洲男子天堂网| 国产精品一区二区在线| 国产一区二区三区毛片| 91成人天堂久久成人| 日韩欧美在线视频日韩欧美在线视频| 久久久97精品| 日韩欧美在线一区| 欧美日韩国产一区在线| 国产精选久久久久久| 国产精品综合网站| 4444欧美成人kkkk| 日韩精品免费在线视频观看| 97碰碰碰免费色视频| 777午夜精品福利在线观看| 亚洲一品av免费观看| 九九综合九九综合| 精品成人国产在线观看男人呻吟| 亚洲欧美另类国产| 午夜伦理精品一区| 亚洲另类激情图| 欧美人成在线视频| 亚洲精品之草原avav久久| 亚洲天堂男人天堂| 最近2019年手机中文字幕| 91网站在线免费观看| 91久久精品视频| 国产精品久久久久久久9999| 久久精品国产69国产精品亚洲| 最新中文字幕亚洲| 日韩精品中文字幕久久臀| 欧美成年人在线观看| 日韩电影在线观看免费| 538国产精品一区二区在线| 成人看片人aa| 国产精品毛片a∨一区二区三区|国| 在线看欧美日韩| 色悠久久久久综合先锋影音下载| 97精品国产91久久久久久| 久久电影一区二区| 日韩少妇与小伙激情| 91wwwcom在线观看| 精品国产成人av| 久久最新资源网| 亚洲免费伊人电影在线观看av| 日韩激情片免费| 国产免费一区二区三区香蕉精| 国产精品狼人色视频一区| 美女999久久久精品视频| 国产精品欧美风情| 色综合久久88色综合天天看泰| 97久久超碰福利国产精品…| 在线日韩日本国产亚洲| 亚洲色图狂野欧美| 国产亚洲一区二区精品| 日韩免费看的电影电视剧大全| 成人黄色免费片| 国产精品激情自拍| 亚洲欧美日韩中文在线制服| 欧美日韩一区二区三区| 亚洲一区二区少妇| 国产91精品黑色丝袜高跟鞋| 美女av一区二区| 69久久夜色精品国产7777| 日本欧美爱爱爱| 永久免费精品影视网站| 丁香五六月婷婷久久激情| 久久99国产精品自在自在app| 国产精品日韩欧美大师| 欧美精品免费看| 国产一区二区日韩| 国产精品ⅴa在线观看h| 欧美日韩在线观看视频小说| 欧美一区二区.| 中文字幕日韩欧美| 国产精品视频白浆免费视频| 日本a级片电影一区二区| 国产日韩av在线播放| 91精品国产综合久久香蕉| 日韩精品视频中文在线观看| 亚洲高清免费观看高清完整版| 国产成人精品国内自产拍免费看| 国产成人在线视频| 国产91精品视频在线观看| 精品毛片网大全| 日韩亚洲在线观看| 日本中文字幕成人| 清纯唯美日韩制服另类| 韩国福利视频一区| 91亚洲国产成人久久精品网站| 国产亚洲精品久久久久久牛牛| 日韩亚洲欧美成人| 日韩视频免费看| 亚洲日韩欧美视频| 亚洲影院高清在线| 亚洲综合中文字幕在线| 亚洲第一男人av| 欧美国产在线视频| 国产日韩欧美电影在线观看| 欧美精品在线免费观看| 日韩av一卡二卡| 精品香蕉一区二区三区| www.欧美免费| 国产精品久久久久久中文字| 国产精品成人aaaaa网站| 成人黄色免费在线观看| 欧美成人全部免费| 亚洲国产精久久久久久久|