[英]Toggle class for individual element
Uber noob在这里,我正在尝试创建一个Javascript / DOM内存游戏,我遇到的问题是翻转1张卡而不是全部
完整代码在这里https://codepen.io/anon/pen/PedeYq
$(".card").on("click", flipCard); function flipCard(event) { cardFlip(); } function cardFlip() { HERE.toggleClass('open show') }
但是,我似乎正在尝试切换此卡(请参阅此处的提示),似乎无效。
在jQuery的事件处理函数中的this
是点击的元素:
$(".card").on("click", cardFlip); function cardFlip() { $(this).toggleClass('open show'); }
.card { display: inline-block; width: 20px; height: 20px; background: black; } .open { background: blue; } .show { box-shadow: 0 0 0 2px gold; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="card"></div> <div class="card"></div>
另一种选择是使用event.target
:
$(".card").on("click", cardFlip); function cardFlip(event) { $(event.target).toggleClass('open show'); }
.card { display: inline-block; width: 20px; height: 20px; background: black; } .open { background: blue; } .show { box-shadow: 0 0 0 2px gold; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="card"></div> <div class="card"></div>
jQuery在事件处理程序中this
设置为目标元素。 您可以this
传递给cardFlip
。
$(".card").on("click", flipCard); function flipCard(event) { cardFlip(this); } function cardFlip(HERE) { HERE.toggleClass('open show') }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.