Я сейчас создаю игру в блэкджек и каждый раз, нажимая «хит», я запускаю эту функцию, которая добавляет div, представляющий карту, извлеченную из колоды.
Я могу установить идентификатор для div, но я хочу, чтобы каждый идентификатор увеличивался в значении ... Итак, div1, div2, div3. В настоящее время каждый div получает один и тот же идентификатор, который будет бесполезен при попытке добавить значения к каждой карточке.
Другая проблема, с которой я сталкиваюсь, - это попытка добавить еще 2 дочерних элемента (каждый с уникальными идентификаторами) к этому новому div "card", который я могу заполнить "мастью" и "значением" карты.
Вот моя функция на данный момент ...
function hitMe() {
var playerCards = document.getElementById("playerCards");
let newCard = document.createElement("div");
newCard.textContent = "Hello";
playerCards.appendChild(newCard);
newCard.setAttribute("id", "id_Here");
}
Так что, как только я создам каждый карты, я хочу, чтобы слово «Hello» было заменено значением карты и мастью карт.
Значение карты и масть карт можно получить с помощью этого метода создания колоды / игрока
var suits = ["&spades", "&hearts", "&diams", "&clubs"];
var values = ["2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"];
var deck = new Array();
function createDeck() {
deck = new Array();
for (var i = 0; i < values.length; i++) {
for (var x = 0; x < suits.length; x++) {
var weight = parseInt(values[i]);
if (values[i] == "J" || values[i] == "Q" || values[i] == "K") weight = 10;
if (values[i] == "A") weight = 11;
var card = { Value: values[i], Suit: suits[x], Weight: weight };
deck.push(card);
}
}
}
var players = new Array();
function createPlayers(num) {
players = new Array();
for (var i = 1; i <= num; i++) {
var hand = new Array();
var player = { Name: "Player " + i, ID: i, Points: 0, Hand: hand };
players.push(player);
}
}
function deal() {
for (var i = 0; i < 2; i++) {
for (var x = 0; x < players.length; x++) {
var card = deck.pop();
players[x].Hand.push(card);
renderCard(card, x);
updatePoints();
}
}
updateDeck();
}
Если бы у кого-то было бы более упрощенное решение для кода, перечисленного выше, и как go об этом, я был бы очень рад. Спасибо