Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 记忆卡游戏点击事件在手机上无法正常工作,但在电脑上却可以正常工作_Javascript_Css - Fatal编程技术网

Javascript 记忆卡游戏点击事件在手机上无法正常工作,但在电脑上却可以正常工作

Javascript 记忆卡游戏点击事件在手机上无法正常工作,但在电脑上却可以正常工作,javascript,css,Javascript,Css,我正在进行一个免费代码营记忆卡挑战赛,由于某些原因,只有在手机上,当我单击卡的正面时,它会翻转,但会再次显示卡的正面,尽管它应该是背面显示。在我的chrome电脑上,一切都很好。无论是chrome、safari还是firefox,只有在切换到手机时才会出现此问题。。有人能帮我弄清楚吗?我非常感谢您的帮助,我不太确定如何解决这个问题 const cards=document.querySelectorAll('.memory card'); 让hasFlippedCard=false; 让锁定板

我正在进行一个免费代码营记忆卡挑战赛,由于某些原因,只有在手机上,当我单击卡的正面时,它会翻转,但会再次显示卡的正面,尽管它应该是背面显示。在我的chrome电脑上,一切都很好。无论是chrome、safari还是firefox,只有在切换到手机时才会出现此问题。。有人能帮我弄清楚吗?我非常感谢您的帮助,我不太确定如何解决这个问题

const cards=document.querySelectorAll('.memory card');
让hasFlippedCard=false;
让锁定板=假;
让第一张牌,第二张牌;
函数flipCard(){
如果(锁板)返回;
如果(此===第一张卡)返回;
this.classList.add('flip');
如果(!hasFlippedCard){
hasFlippedCard=true;
第一张卡片=这个;
返回;
}
第二张卡片=这个;
checkForMatch();
}
函数checkForMatch(){
让isMatch=firstCard.dataset.framework==secondCard.dataset.framework;
isMatch?disableCards():解除LippCards();
}
功能禁用卡(){
firstCard.removeEventListener('单击',flipCard);
secondCard.removeEventListener(“单击”,flipCard);
const mySound0=document.getElementById(“声音”);
mySound0.play();
重置板();
}
函数unflipCards(){
锁定板=正确;
设置超时(()=>{
firstCard.classList.remove('flip');
secondCard.classList.remove('flip');
const mySound1=document.getElementById(“soundError”);
mySound1.play();
重置板();
}, 1500);
}
功能板(){
[hasFlippedCard,lockBoard]=[false,false];
[firstCard,secondCard]=[null,null];
}
(函数shuffle(){
卡片。forEach(卡片=>{
让randomPos=Math.floor(Math.random()*12);
card.style.order=randomPos;
});
})();
cards.forEach(card=>card.addEventListener('click',flipCard))
*{
保证金:0;
填充:0;
文字装饰:无;
边界:无;
框大小:边框框;
字体系列:无衬线;
}
.电网{
显示:网格;
网格模板列:1fr;
网格模板行:100vh;
}
.背景图像{
背景尺寸:封面;
背景图像:url(“https://assets.codepen.io/1179484/desert.jpg");
背景位置:底部;
显示:网格;
}
.渐变叠加{
背景:#fbb99ac4;
显示器:flex;
}
.背景图像,.渐变叠加{
网格柱:1;
网格行:1;
}
.正面,.背面{
边界半径:5px;
填充:10px;
位置:绝对位置;
宽度:100%;
身高:100%;
背面可见性:隐藏;
}
.正面{
变换:旋转(180度);
高度:自动;
}
.背面{
背景色:#f6938a;
}
.存储卡{
边界半径:5px;
保证金:5px;
宽度:计算(25%-10px);
高度:calc(33.333%-10px);
位置:相对位置;
变换:比例(1);
变换样式:保留-3d;
转变:转变;
背景色:#a1b2a1;
显示器:flex;
证明内容:中心;
对齐项目:居中;
}
.存储卡:活动{
变换:缩放(.97);
转变:转变2;
}
.memory-card.flip{
变换:旋转(180度);
}
.记忆游戏{
宽度:640px;
高度:640px;
显示器:flex;
柔性包装:包装;
保证金:自动;
透视图:1000px;
}


您遇到的问题是什么?我在查找2张匹配卡时出现此错误
Uncaught ReferenceError:未定义五彩纸屑
,这就是你的意思吗?当我点击卡片翻转到另一面时,它会翻转,但随后会再次显示卡片的背面,而不是另一面的实际照片。不,不是关于它在我的代码笔中的定义,我会在这里取下它,但这不是问题所在。你在代码中使用了箭头函数,而此js功能在中无效所有浏览器都会尝试使用
函数(x){}
而不是箭头函数。您提供的代码太多,对于您观察到的特定问题不够清晰。如果您认为这是一个CSS问题,那么您的第一步应该是尝试使用最少的CSS代码重新创建该问题。