Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.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,在这里,我试图建立一个记忆游戏。在这个游戏中,我想为卡片匹配建立逻辑。逻辑是这样的,我想在两个变量中存储第一次单击和第二次单击,然后在用户单击第一张卡时检查 它将与第二张卡匹配,然后用户将无法再次单击这些卡,并且它将不会翻转。如果不匹配,用户可以再次单击这些卡。试了一个小时,但解决不了。我该怎么办?有人帮忙吗 //声明变量 const cardClass=[fa菱形、fa-paper-plane-o、fa锚、fa螺栓]; const firstClick,secondClick; const

在这里,我试图建立一个记忆游戏。在这个游戏中,我想为卡片匹配建立逻辑。逻辑是这样的,我想在两个变量中存储第一次单击和第二次单击,然后在用户单击第一张卡时检查 它将与第二张卡匹配,然后用户将无法再次单击这些卡,并且它将不会翻转。如果不匹配,用户可以再次单击这些卡。试了一个小时,但解决不了。我该怎么办?有人帮忙吗

//声明变量 const cardClass=[fa菱形、fa-paper-plane-o、fa锚、fa螺栓]; const firstClick,secondClick; const card=document.queryselectoral'.deck li'; //for循环
forlet i=0;我在谷歌上搜索,但你可以使用本地存储:

因为你可以设置和获取
这是你想要的吗?

首先,你需要一个计数器来记录打开的卡的数量->如果是两张卡,是时候比较它们了。 为了知道点击了哪张卡,我们分别在firstclick和secondClick中存储了一个引用。 e、 g

为了比较两张卡片是否属于同一类型,我们使用它的类名fa diamond,fa-paper-plane-o。。。我们可以打电话:

var card1Type = firstClick.getElementsByTagName("i")[0].className;
var card2Type = secondClick.getElementsByTagName("i")[0].className;
如果这些匹配,请删除其单击事件侦听器:

  firstClick.removeEventListener("click", flipOver);
  secondClick.removeEventListener("click", flipOver);
如果没有,我们需要把它们再翻一次

整个例子:

//声明变量 const cardClass=[fa菱形、fa-paper-plane-o、fa锚、fa螺栓]; 第一次点击,第二次点击; var计数器=1; var错误=错误; const card=document.queryselectoral'.deck li'; //for循环 对于let i=0;i关于常数的计划是什么?当它们被定义时,通常会给它们赋值。否则它们可能不是常量。SyntaxError:missing=在常量中declaration@isherwood没关系。但如何建立逻辑,我可以检查用户第一次点击和第二次点击匹配与否!这是主要问题!第一步是为我们提供一些不会出错的东西。然后我们可以继续。我想比较一下第一张卡和第二张卡。你可以检查它-你可以添加一个隐藏类,例如,如果你点击两次隐藏类被添加,每次你点击第一次隐藏类被删除,你知道我的意思吗?谢谢,兄弟!兄弟,我能用if-else语句而不是switch来做吗?很高兴我能帮上忙!我编辑了上面的答案,改为使用if-else块。非常感谢,兄弟!:
  firstClick.removeEventListener("click", flipOver);
  secondClick.removeEventListener("click", flipOver);