0
我在Html canvas元素的click事件上添加了一個事件監聽器。 函數語句被多次執行。第一次的聲明執行一次,當我再次調用主fnction,點擊會導致同樣的功能,可以執行兩次,然後三次等等javascript addEventListener for click事件多次調用函數
這裏是聽者
function initializeNewGame() {
// Set block
cur = new Date();
countDownDate = new Date(cur.getTime() + 5*60010).getTime();
moves = 0;
BLOCK_WIDTH = Math.round(BLOCK_IMG_WIDTH/TOTAL_COLUMNS);
BLOCK_HEIGHT = Math.round(BLOCK_IMG_HEIGHT/TOTAL_ROWS);
document.getElementById("canJigsaw").addEventListener("click", myFunction);
function myFunction() {
moves = moves + 1;
}
SetImageBlock();
DrawGame();
}
你是否多次調用這段代碼 - 它每次都添加一個* new *事件處理函數。確保你只調用一次'addEventListener'位 – Jamiec
@Jamiec:它工作。我添加了一個布爾值來確保函數不會被調用多次。謝謝 – yogas