在使用jQuery时无法减去变量

时间:2016-04-07 02:14:35

标签: javascript jquery

我对jQuery和整个javascript都很陌生。我在使用.click jQuery时减去不同的变量时遇到了麻烦。我试图通过变量adjustdmg降低nmeHealth的值。

变量

var defdamage = 20;
var strength = 1;
var adjustdmg = strength + defdamage - 1;
var nmeHealth = 100;

功能

$("#enemy").click(function() {
  if (nmeHealth >= 0) {
    $("#enemyHealth").html(nmeHealth);
    var nmeHealth = nmeHealth - adjustdmg;
  }
})

1 个答案:

答案 0 :(得分:2)

var nmeHealth是问题,因为它意味着你实例化一个新变量(它属于函数范围)而不是修改旧变量。这一行:

var nmeHealth = nmeHealth - adjustdmg;

应该是:

nmeHealth = nmeHealth - adjustdmg;

或者很快:

nmeHealth -= adjustdmg;

另外,如果你想显示当前敌人的生命值,而不是落后一个循环,也要改变线的顺序。我在这里谈论这段代码:

$("#enemyHealth").html(nmeHealth);
var nmeHealth = nmeHealth - adjustdmg;

最终版本:

nmeHealth -= adjustdmg;
$("#enemyHealth").html(nmeHealth);