首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML5内存游戏- JavaScript函数

HTML5内存游戏- JavaScript函数
EN

Stack Overflow用户
提问于 2015-03-29 13:28:30
回答 1查看 8.9K关注 0票数 1

HTML5内存游戏有一个JavaScript函数来检查图像匹配。每当进行第一次匹配时,check()函数就会阻止文档为更多匹配选择其他图像。如何向check()函数中添加另一个参数以查找更多匹配项?

查看源代码:

代码语言:javascript
复制
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title> MEMORY </title>

<script>
    var clicks = 0; //counts how may picks have been made in each turn
    var firstchoice; //stores index of first card selected
    var secondchoice; //stores index of second card selected

    var match = 0; //counts matches made
    var backcard = "guess.jpeg"; //shows back of card when turned over

    var faces = []; //array to store card images
    faces[0] = 'image1.png';
    faces[1] = 'image2.png';
    faces[2] = 'image3.png';
    faces[3] = 'image3.png';
    faces[4] = 'image1.png';
    faces[5] = 'image2.png';

    function choose(card) {
            if (clicks == 2) {
                return;
            }
            if (clicks == 0) {
                firstchoice = card;
                document.images[card].src = faces[card];
                clicks = 1;
            } else {
                clicks = 2;
                secondchoice = card;
                document.images[card].src = faces[card];
                timer = setInterval("check()", 1000);
            }
        }
        /* Check to see if a match is made */

    function check() {
        clearInterval(timer); //stop timer
        if (faces[secondchoice] == faces[firstchoice]) {
            match++;
            document.getElementById("matches").innerHTML = match;
        } else {
            document.images[firstchoice].src = backcard;
            document.images[secondchoice].src = backcard;
            clicks = 0;
            return;
        }
    }
</script>
</head>

<body>
     <a href="javascript:choose(0)"><img src="guess.jpeg" width=200px height=200px /></a>

     <a href="javascript:choose(1)"><img src="guess.jpeg" width=200px height=200px /></a>

     <a href="javascript:choose(2)"><img src="guess.jpeg" width=200px height=200px /></a>

     <br>

     <a href="javascript:choose(3)"><img src="guess.jpeg" width=200px height=200px/></a>

    <a href="javascript:choose(4)"><img src="guess.jpeg" width=200px height=200px /></a>

    <a href="javascript:choose(5)"><img src="guess.jpeg" width=200px height=200px /></a>

    <br>

    <b style="font-size:40px;"> MATCHES :</b>
    <b style="font-size:60px;" id="matches"> 0 </b>

</body>

</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-29 13:45:42

当用户做出正确的选择时,您就忘了重置单击:

代码语言:javascript
复制
function check() {
    clearInterval(timer); //stop timer
    clicks = 0;
    if (faces[secondchoice] == faces[firstchoice]) {
        match++;
        document.getElementById("matches").innerHTML = match;
    } else {
        document.images[firstchoice].src = backcard;
        document.images[secondchoice].src = backcard;
        return;
    }
}

在任何情况下将单击重置为0,这样用户可以继续播放:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29329698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档