首页 > 解决方案 > 删除javascript中的条目时记住位置

问题描述

我正在创建一个应具有以下功能的纸牌游戏:

  1. 3 张牌在棋盘的位置 0、1 和 2 -> [0][1][2]
  2. 用户可以选择其中一张卡
  3. 选择的卡需要被移除,剩下的两张卡需要移动一个更高的位置。然后应该将一张新卡添加到位置 0。

示例([X] 是一张空/不存在的卡片):

这个想法是,每当一张牌打到位置 5 时,除了那张牌之外,没有其他牌可以选择。我对如何创建它有点迷茫,所以我很感激任何帮助。

我目前得到以下代码来向板上添加卡片:

 function addCardToBoard() {
    let curCard = myDeck.getCard();
    let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
    $(cardHtml).prependTo("#cards").on("click", function() { 
        $(this).remove();
        clickCard(curCard); 
    });
}

以及function clickCard(myCard){}发现对某张卡片的点击的方法。

标签: javascriptarraysappend

解决方案


这解决了这个问题。创建一个数组并添加元素,然后进一步发送卡片的索引而不是卡片本身。

function addCardToBoard() {
        let curCard = myDeck.getCard();
        cardsArray.unshift(curCard);
        let cardHtml = "<div class='card'>" + curCard.category + "<br>" + curCard.method + "</div>";
        $(cardHtml).prependTo("#cards").on("click", function() { 
            $(this).remove();
            clickCard(cardsArray.indexOf(curCard)); 
        });
    }

推荐阅读