我正在尝试使用vanilla js创建一个记忆卡游戏。 我有一个随机播放功能,我想调用重置游戏按钮,但它不起作用。
这是我到目前为止所做的:
var imageList = [
{
name: 'image_1',
id: 1
},
{
name: 'image_2',
id: 2
},
{
name: 'image_3',
id: 3
},
{
name: 'image_4',
id: 4
}
],
card = [],
appendToBoard = document.getElementById('cardTable');
function shuffle(array) {
//some code here
}
function createCardDeck() {
shuffle(imageList); // calling shuffle(imageList)
//some code here
}
所有上述工作但是当我在btnReset上调用shuffle(imageList)时它什么都不做
document.getElementById('btnReset').addEventListener('click', function(event) {
event.preventDefault();
shuffle(imageList);
}, true);
https://jsfiddle.net/rmbor/qnzaope7/
任何建议将不胜感激。 谢谢
答案 0 :(得分:1)
做两件事:
在添加标记之前,将var card = '';
添加到createCardDeck
函数以清除它:
function createCardDeck() {
shuffle(imageList);
var card = '';
for (var i = 0; i < imageList.length; i++) {...}
}
将shuffle(imageList)
替换为createCardDeck()
函数中的addEventListener
:
document.getElementById('btnReset').addEventListener('click', function(event) {
event.preventDefault();
createCardDeck();
}, true);
检查演示 - Fiddle.