Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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与ID的混淆_Javascript - Fatal编程技术网

JavaScript与ID的混淆

JavaScript与ID的混淆,javascript,Javascript,编写一个基于浏览器的混合Cookie Clicker和一个暗室 金牌(球员的分数)显示在屏幕上。每次单击按钮时,都会向gold添加一个设置的数字。到目前为止,一切顺利。不起作用的是设计用来检查黄金价值是否大于100的逻辑 我已经做了很多次了,但是我不知道我做错了什么。这是一个语法错误,还是缺少一些附加代码 $(function() { $('#success') var gold = 0; // clicked food button adds 3 gold $

编写一个基于浏览器的混合Cookie Clicker和一个暗室

金牌(球员的分数)显示在屏幕上。每次单击按钮时,都会向gold添加一个设置的数字。到目前为止,一切顺利。不起作用的是设计用来检查黄金价值是否大于100的逻辑

我已经做了很多次了,但是我不知道我做错了什么。这是一个语法错误,还是缺少一些附加代码

$(function() {
    $('#success')
    var gold = 0;

    // clicked food button adds 3 gold
    $('#food').click(function() {

        gold+=3;
        $('#gold').text(gold);
    });

    // clicked wool button adds 4 gold
    $('#wool').click(function () {

        gold+=4;
        $('#gold').text(gold);
    });

    // clicked lumber button adds 7 gold
    $('#lumber').click(function () {

        gold+=7;
        $('#gold').text(gold);
    });

    // if gold > 99, put
    //alert("You won! Play again?")
    if (('#gold') > 99) {
        var x = confirm("You won! Play again?");
        if (x == true) {
            window.close();
        }
        else {
            window.close();
        }
    }
});
你应该替换

if(“#gold”)>99{

符合

if(黄金>99)


我猜这是=)

好吧,您正在定义函数,但没有调用它们……像这样尝试吧

$(function() {
    // $('#success') // what does this line do ?
    var gold = 0;

    // clicked food button adds 3 gold
    $('#food').click(function() {

        gold+=3;
        $('#gold').text(gold);
        checkGold();
    });

    // clicked wool button adds 4 gold
    $('#wool').click(function () {

        gold+=4;
        $('#gold').text(gold);
        checkGold();
    });

    // clicked lumber button adds 7 gold
    $('#lumber').click(function () {

        gold+=7;
        $('#gold').text(gold);
        checkGold();
    });

    function checkGold() {
        // if gold > 99, put
        //alert("You won! Play again?")
        if (parseInt($('#gold').text()) > 99) {
            var x = confirm("You won! Play again?");
            if (x == true) {
                window.close();
            } else {
                window.close();
            }
        }
        return true;
    }
});

仔细查看((“#gold”)>99{line。检查黄金量是否超过99的代码-应该在什么时候运行?实际上,它只在“就绪”处理程序运行时运行一次。您需要进行该检查(并且正确执行该检查)每次黄金的数量发生变化。我没有考虑过运行时间;谢谢你解决这个问题。@tanaydin我已经反复讨论了这一行的结构,但仍然无法决定什么是合适的。我使用的是id,所以我认为按id列出黄金是合适的。