我正在研究一个简单的二十一点游戏,在庄家中将为发牌者提供一张卡,向玩家提供两张(基本规则)。
卡显示得很好,但是当我向经销商卡容器添加一个类时,该容器拒绝确认我刚刚添加的类。我从播放器功能中复制并粘贴了相同的代码,该代码成功发行了播放器卡,而且似乎在我的发牌人功能上也不起作用。
我要附加的类是“符号”。
如果您查看下面的jsfiddle代码段,则可以对其进行检查以查看类“ symbol”没有附加到发牌人,但是在播放器功能中可以正常使用。
预先感谢您的帮助。
http://jsfiddle.net/vorqdkb7/1/
经销商
function deal_dealer_cards(){
let dealerContainer = document.querySelector('.dealer_container');
let card = deck.pop();
dealerHand.push(card);
let dealerCard = document.createElement('div');
dealerCard.className = "dealer_card";
dealerContainer.append(dealerCard);
let rank = document.createElement('div');
rank.className = "rank";
dealerCard.append(rank);
rank.innerHTML = card.value;
let symbol = document.createElement('div');
dealerCard.append(symbol);
symbol.className = 'symbol';
let cardSymbol = document.createElement('span');
symbol.append(cardSymbol);
cardSymbol.setAttribute('id', 'card_symbol');
let i = document.createElement('i');
cardSymbol.append(i);
let fa = "fas ";
播放器
function deal_player_cards(){
let playerContainer = document.querySelector('.player_container');
let fa = "fas ";
for (let i = 0; i < 2; i++){
let card = deck.pop();
playerHand.push(card);
let playerCard = document.createElement('div');
playerCard.className = "player_card";
playerContainer.append(playerCard);
let rank = document.createElement('div');
rank.className = "rank";
playerCard.append(rank);
rank.innerHTML = card.value;
let symbol = document.createElement('div');
playerCard.append(symbol);
symbol.className = 'symbol';
let cardSymbol = document.createElement('span');
symbol.append(cardSymbol);
cardSymbol.setAttribute('id', 'card_symbol');
let i = document.createElement('i');
cardSymbol.append(i);
let fa = "fas "; }
答案 0 :(得分:1)
好吧,div .symbol
确实被附加了,但是在下面的代码中,您更新了className。
使用此代码
symbol.className = fa + "fa-heart";
现在,我不知道您到底需要什么。但是,如果您想附加符号类,也许您想做
symbol.className += " " + fa + "fa-heart";
我希望对您有帮助
答案 1 :(得分:0)
您可以使用symbol.classList.add('fa-heart')
将class添加到元素中,因为这样做是用新的className属性覆盖了整个className属性。
,您也可以使用symbol.classList.remove('fa-heart')
删除特定的类。
希望这对您有所帮助。