我对jQuery和javascript整体来说还很陌生。在使用.click
jQuery减去不同变量时遇到麻烦。我正在尝试使nmeHealth的值被变量Adjustdmg降低。
变数
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;
}
})
最佳答案
var nmeHealth
是问题所在,因为它意味着您要实例化一个新变量(并且它属于函数作用域),而不是修改旧变量。该行:
var nmeHealth = nmeHealth - adjustdmg;
应该:
nmeHealth = nmeHealth - adjustdmg;
或不久:
nmeHealth -= adjustdmg;
另外,如果您想显示当前敌人的健康状况,并且不落后一个周期,也可以更改行的顺序。我在这里谈论这段代码:
$("#enemyHealth").html(nmeHealth);
var nmeHealth = nmeHealth - adjustdmg;
最终版本:
nmeHealth -= adjustdmg;
$("#enemyHealth").html(nmeHealth);