今天我們要用canvas製作乙個猜字母的小遊戲,先來張效果圖。
遊戲設計很簡單,系統會隨機從a-z的26個字母中選擇乙個儲存起來,你鍵盤輸入乙個字母,系統會提示你正確字元比你當前輸入字母小還是大,直到你輸入正確的字母遊戲才結束。
下面介紹js**中需要用到的一些變數及其他們的含義,系統會在開始的時候初始化這些變數。
guesses:使用者猜字母的次數;
message:幫助玩家如何玩遊戲的說明;
letters:儲存26個英文本母的陣列;
today:當前時間;
lettertoguess:系統選中的字母,也就是你需要猜中的字母;
higherorlower:提示使用者當前輸入的字母比答案大還是小;
lettersguessed:使用者已經猜過的字母;
gameover:遊戲是否結束。
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 = "";
varlettersguessed;
var gameover = false;
$(window).bind('keyup', eventkeypressed);
function這裡需要注意的一點是,當我們需要對canvas中的影象做修改時,一般會重新繪製整個canvas物件。所以在我們每猜一次字母,都會執行drawscreen把整個canvas上的所有物件都繪製一遍。eventkeypressed(e)
else
else
if (guessindex >letterindex)
else
}//重繪canvas
drawscreen();}}
下面我們看看drawscreen都幹了什麼。
function**很簡單,就是繪製背景,還有文字資訊。下面我們介紹匯入影象的功能,當我們點選「export canvas image」按鈕的時候,會開啟乙個新的頁面,顯示當前的影象。注意todataurl()方法,他會返回乙個64位的png資料。drawscreen()
}
$('#createimagedata').click(function() );
HTML5 Canvas 2 繪製弧形
window.onload function 得到2d渲染上下文 var context document.getelementbyid mycanvas getcontext 2d var x 50,y 50,原點座標 radius 50,半徑 startangle 0,起始弧度 endangle...
HTML5基礎 Canvas元素
1 這是乙個畫布標籤,用於繪製圖形,在網頁中顯示是乙個矩形,沒有內容和邊框,通常放置canvas標籤的時候需要新增乙個id屬性,便於用js進行繪製時讀取該畫布。2 該元素可以設定長寬和邊框樣式,具體 如下 注 canvas是完全沒有繪圖的工作,繪製的工作全部都交給js,canvas僅僅是乙個畫布而已...
HTML5 canvas 繪製圓形
canvas繪製圓形的思路 1 建立路徑 beginpath 2 建立圓形的路徑 3 關閉路徑 closepath 路徑不關閉也能繪製出圖形 4 設定繪製樣式。建立圓形路徑時需要用到物件的arc方法,方法定義如 arc x,y,radius,startangle,endangle,countercl...