【发布时间】:2020-02-06 14:34:06
【问题描述】:
我正在制作一个网站,http://phaidonasgialis.xyz。我想让瓷砖转动并让其他瓷砖返回。到目前为止,除了一个小错误外,它仍然有效,您按下的磁贴在您第二次单击之前不会返回。任何帮助将不胜感激。
代码如下:
$(document).ready(function() {
var 先前 = []; $('.flip-card').each(function(i, obj) {
$(this).click(function() {
if ($(this).find('.flip-card-inner').hasClass('flip-card-transform')) {
$(this).find('.flip-card-inner').removeClass('flip-card-transform');
} else {
$(this).find('.flip-card-inner').addClass('flip-card-transform');
previous.push(this);
if (previous.length >= 2 && previous[previous.length - 2] != previous[previous.length - 1]) {
for (var i = 0; i < previous.length; i++) {
if ($(this).find('.flip-card-inner').hasClass('flip-card-transform')) {
$(previous[i - 1]).find('.flip-card-inner').removeClass('flip-card-transform');
console.log("2")
} else {
$(this).find('.flip-card-inner').addClass('flip-card-transform');
console.log("3")
}
}
}
}
});
});
【问题讨论】:
-
请将所有相关代码放入问题中,这样人们就不必离开现场即可复制问题并理解您的要求。
-
为什么要用
previous作为数组?只需将其设为包含单个对象的变量即可。首先将已经翻转的卡片(上一个)先翻转回来。然后翻转点击的卡片并将其分配给previous,除非之前和当前相同。
标签: javascript jquery css arrays