[英]I'm making a card game and I want to change the image once it has been clicked
import Deck from "./deck2.js" const deck = new Deck() var playerCardImg = deck.cards[0].image; createCard() createCard() createCard() var cards = Array.from(document.getElementsByClassName("card")) cards.forEach(card => { card.addEventListener("click", () => { card.classList.toggle("flipCard") var playerCard = deck.pop() playerCardImg = playerCard.image cardImg.setAttribute("src", playerCardImg); innerInnerCardDiv.appendChild(cardImg) }); }); function createCard() { var cardImg = document.createElement('IMG') var cardText = document.createElement('h1') var cardDiv = document.createElement('div') var innerCardDiv = document.createElement('div') var innerInnerCardDiv = document.createElement('div') var innerInnerCardDiv2 = document.createElement('div') cardDiv.classList.add("maincontainer") innerCardDiv.classList.add("card") innerInnerCardDiv2.classList.add("back") cardImg.setAttribute("src", playerCardImg); cardImg.classList.add("front") cardText.innerText = "Beast Battle" document.body.appendChild(cardDiv) cardDiv.appendChild(innerCardDiv) innerCardDiv.appendChild(innerInnerCardDiv) innerCardDiv.appendChild(innerInnerCardDiv2) innerInnerCardDiv.appendChild(cardImg) innerInnerCardDiv2.appendChild(cardText) return cardDiv }
I thought by doing this:我想通过这样做:
cardImg.setAttribute("src", playerCardImg);
I'd be able to change the image but it doesn't work Note: When I click the card, it does flip.我可以更改图像,但它不起作用注意:当我单击卡片时,它会翻转。 The problem is that since it doesn't change the image, all the cards have the same image.
问题是因为它不改变图像,所以所有的卡片都有相同的图像。
Edit: here's a link to all the files编辑:这是所有文件的链接
github.com/LyshaJaufar/CardGame.git github.com/LyshaJaufar/CardGame.git
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.