亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Jquery 翻轉卡故障排除

Jquery 翻轉卡故障排除

一只名叫tom的貓 2022-06-05 16:34:53
我正在嘗試使用 HTML 和 CSS 創建多個翻轉卡,使用 jQuery 進行翻轉。我遇到的問題是目前我只能翻轉第一張牌。任何使 jQuery 更加全球化并能夠單擊/翻轉每張卡片的建議將不勝感激。這是我一直在使用的示例:https ://codepen.io/marcwilk/pen/JjdwKZRHTML:<div class="scene scene--card">  <div class="card">    <div class="card__face card__face--front">front</div>    <div class="card__face card__face--back">back</div>  </div></div><div class="scene scene--card">  <div class="card">    <div class="card__face card__face--front">front</div>    <div class="card__face card__face--back">back</div>  </div></div><p>Click card to flip.</p>CSS:body { font-family: sans-serif; }.scene {  width: 200px;  height: 260px;  border: 1px solid #CCC;  margin: 40px 0;  perspective: 600px;}.card {  position: relative;  width: 100%;  height: 100%;  cursor: pointer;  transform-style: preserve-3d;  transform-origin: center right;  transition: transform 1s;}.card.is-flipped {  transform: translateX(-100%) rotateY(-180deg);}.card__face {  position: absolute;  width: 100%;  height: 100%;  line-height: 260px;  color: white;  text-align: center;  font-weight: bold;  font-size: 40px;  backface-visibility: hidden;}.card__face--front {  background: red;}.card__face--back {  background: blue;  transform: rotateY(180deg);}JS:var card = document.querySelector('.card');card.addEventListener( 'click', function() {  card.classList.toggle('is-flipped');});謝謝!
查看完整描述

1 回答

?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

首先,您的代碼是純 JavaScript,而不是使用 jQuery。


其次,問題是您使用document.querySelector('.card')which 選擇第一個.card元素。


您的解決方案是使用document.querySelectorAll('.card');并循環通過它來添加點擊事件偵聽器:


var cards = document.querySelectorAll('.card');

cards.forEach(card => {

  card.addEventListener('click', function() {

    card.classList.toggle('is-flipped');

  })

})

body {

  font-family: sans-serif;

}


.scene {

  width: 200px;

  height: 260px;

  border: 1px solid #CCC;

  margin: 40px 0;

  perspective: 600px;

}


.card {

  position: relative;

  width: 100%;

  height: 100%;

  cursor: pointer;

  transform-style: preserve-3d;

  transform-origin: center right;

  transition: transform 1s;

}


.card.is-flipped {

  transform: translateX(-100%) rotateY(-180deg);

}


.card__face {

  position: absolute;

  width: 100%;

  height: 100%;

  line-height: 260px;

  color: white;

  text-align: center;

  font-weight: bold;

  font-size: 40px;

  backface-visibility: hidden;

}


.card__face--front {

  background: red;

}


.card__face--back {

  background: blue;

  transform: rotateY(180deg);

}

<div class="scene scene--card">

  <div class="card">

    <div class="card__face card__face--front">front</div>

    <div class="card__face card__face--back">back</div>

  </div>

</div>

<div class="scene scene--card">

  <div class="card">

    <div class="card__face card__face--front">front</div>

    <div class="card__face card__face--back">back</div>

  </div>

</div>

<p>Click card to flip.</p>


查看完整回答
反對 回復 2022-06-05
  • 1 回答
  • 0 關注
  • 100 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號