随机播放功能无法点击按钮

时间:2016-02-06 23:32:43

标签: javascript addeventlistener

我正在尝试使用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/

任何建议将不胜感激。 谢谢

1 个答案:

答案 0 :(得分:1)

做两件事:

  1. 在添加标记之前,将var card = '';添加到createCardDeck函数以清除它:

    function createCardDeck() {
        shuffle(imageList);
        var card = '';
        for (var i = 0; i < imageList.length; i++) {...}
    }
    
  2. shuffle(imageList)替换为createCardDeck()函数中的addEventListener

    document.getElementById('btnReset').addEventListener('click', function(event) {
        event.preventDefault();
        createCardDeck();
    }, true);
    
  3. 检查演示 - Fiddle.