Jquery 在满足要求之前,如何使按钮处于非活动状态

Jquery 在满足要求之前,如何使按钮处于非活动状态,jquery,html,button,Jquery,Html,Button,我试图使我设置的按钮保持非活动状态,直到满足要求,然后在我使用按钮后,它变为非活动状态。因此,在我的代码中,我有一个计数器,每当我在屏幕上点击一块煤时,计数器就会计数1。我希望我的按钮在达到一定金额之前处于非活动状态,然后当它处于活动状态时,我希望它能够执行类似于用另一种矿石替换煤炭的操作。最后,当我购买新矿石时,我希望按钮再次处于非活动状态,直到我挣到足够的钱购买下一次升级。我不知道你是否可以像我一样使用同一个按钮进行多次购买,但我只是在学习如何彻底使用它们,这样才有可能 重要代码: <

我试图使我设置的按钮保持非活动状态,直到满足要求,然后在我使用按钮后,它变为非活动状态。因此,在我的代码中,我有一个计数器,每当我在屏幕上点击一块煤时,计数器就会计数1。我希望我的按钮在达到一定金额之前处于非活动状态,然后当它处于活动状态时,我希望它能够执行类似于用另一种矿石替换煤炭的操作。最后,当我购买新矿石时,我希望按钮再次处于非活动状态,直到我挣到足够的钱购买下一次升级。我不知道你是否可以像我一样使用同一个按钮进行多次购买,但我只是在学习如何彻底使用它们,这样才有可能

重要代码:

<ul id="one"><strong id="clicks">$<span id="Money">0</span></strong></ul> <!-- Amount of money earned -->

<button type="button" id="upgrade">Upgrade Gem</button> <!-- Button to upgrade gem -->

<script> /* When coal.png is clicked, one unit is added to the money counter */
$(function() {
$('#coal').click(function() {
    moneyCalc();
});

function moneyCalc() {
    var money = parseInt($("#Money").text());
    money = isNaN(money) ? 0: ++money;

    $("#Money").text(money);
}

function resetCounter() {
    $("#Money").text(0);
    }
});
</script>
    $0
升级宝石 /*单击coal.png时,会将一个单位添加到货币计数器*/ $(函数(){ $('#coal')。单击(函数(){ moneyCalc(); }); 函数moneyCalc(){ var money=parseInt($(“#money”).text(); 货币=isNaN(货币)?0:++货币; $(“#货币”)。文本(货币); } 函数resetCounter(){ 元(“#货币”)。文本(0); } });

如果你能帮我的话,提前谢谢你

为其添加
禁用的
属性。所以代码应该是这样的:
$(函数(){
$(“#某些#文本”)。关于(“键控”,函数(){
if($(“#某些#文本”).val()=“foo”){
$(“升级”).prop(“禁用”,false);
}否则{
$(“升级”).prop(“已禁用”,true);
}
});
});


升级Gem
如果您真的想控制对事件处理的访问(与某些css技巧相反),而不是在加载时绑定click事件,只需在moneyCalc()测试成功时绑定它,然后在重置时解除绑定即可

$(function() {
  $('#coal').click(function() {
    moneyCalc();
  });

  function moneyCalc() {
    var money = parseInt($("#Money").text());
    money = isNaN(money) ? 0: ++money;

    if(money > _some_value_)
    {
      $("#ore").click(function(e){
          _some_operation_();
      });
    }

    $("#Money").text(money);
  }

  function resetCounter() {
    $("#Money").text(0);
    $("#ore").unbind("click");
  }
});

嗯,也许你可以使用一些css魔术来显示和隐藏按钮以及J查询。我用它来创建一个响应菜单栏。逻辑需要调整,但我认为这可能是朝着正确方向迈出的一步

<!--jquery function for toggle menu-->
    <script>
        $("#show-nav").click(function() {
            $(".main-nav").toggle("slow");
            $("#close-nav").show("slow");
        });

        $("#close-nav").click(function() {
            $(".main-nav").toggle("slow");
            $("#close-nav").hide("slow");
        });
    </script>

$(“#显示导航”)。单击(函数(){
$(“.main nav”)。切换(“慢速”);
美元(“#关闭导航”)。显示(“慢”);
});
$(“#关闭导航”)。单击(函数(){
$(“.main nav”)。切换(“慢速”);
$(“关闭导航”).hide(“慢速”);
});