function openImg(e){ if(!started) return; var card=e.target; if(card.nodeName==='IMG'){ card=card.parentNode; } if((numCardOpened<2)&&(card.childNodes[0].getAttribute('src')=='imgs/img_star.png')){ var ind=card.getAttribute('id').substring(4); card.childNodes[0].setAttribute('src',cardArr[ind-1]); numCardOpened++; if(numCardOpened==1){ cardOpened=card; } if(numCardOpened==2){ if(cardOpened.childNodes[0].getAttribute('src')==card.childNodes[0].getAttribute('src')){ count=count+2; numCardOpened=0; cardOpened=null; checkAllOpened(); } else{//不相等的图片 setTimeout(function(){ card.childNodes[0].setAttribute('src','imgs/img_star.png'); cardOpened.childNodes[0].setAttribute('src','imgs/img_star.png'); numCardOpened=0; cardOpened=null; },1000); } } } }
时间: 2024-04-28 07:25:43 浏览: 117
ASP.NET MVC4 利用uploadify.js多文件上传
这是一个 JavaScript 函数,它的作用是用于翻转一个卡牌游戏中的卡牌。在游戏中,玩家需要翻转卡牌,尝试找到相同的卡牌对。具体实现方式如下:
1. 判断游戏是否已经开始,如果没有开始,则直接返回。
2. 获取点击事件的目标元素,如果目标元素是图片,则获取其父节点。
3. 判断当前已经翻开的卡牌数量是否小于2,并且点击的卡牌是未被翻开的卡牌(即卡牌的图片为 "imgs/img_star.png")。
4. 如果当前已经翻开的卡牌数量为1,则将当前点击的卡牌保存为 cardOpened。
5. 如果当前已经翻开的卡牌数量为2,则判断两张卡牌是否相同。如果相同,则将计数器 count 加 2,重置已翻开卡牌数量 numCardOpened 和卡牌保存变量 cardOpened,并检查是否所有卡牌都已经被翻开。如果不相同,则将两张卡牌翻回去,并重置已翻开卡牌数量 numCardOpened 和卡牌保存变量 cardOpened。
该函数需要在 HTML 页面中引入图片资源,具体实现可以参考 HTML 代码。
阅读全文