我试图这样做,(不一样,这是我正在做的一个例子)
var health = 1;
function example(){health++;}
if (health == 2) {alert("done");}
但它不起作用。仅当health++ health==2
具有相同功能时才有效。但我不想将health==2
包含在函数示例中。全局,功能和功能失效(相同的变量)不起作用,我不知道为什么,你能解释或给我一个解决方案吗?感谢...
编辑...
我的代码如下所示。我在这里缺少什么?
第一
var health = 2;
第二
function collision6($taskapsa2, $character) {
var x1 = $taskapsa2.offset().left;
var y1 = $taskapsa2.offset().top;
var h1 = $taskapsa2.outerHeight(true);
var w1 = $taskapsa2.outerWidth(true);
var b1 = y1 + h1;
var r1 = x1 + w1;
var x2 = $character.offset().left;
var y2 = $character.offset().top;
var h2 = $character.outerHeight(true);
var w2 = $character.outerWidth(true);
var b2 = y2 + h2;
var r2 = x2 + w2;
if (b1 < y2 || y1 > b2 || r1 < x2 || x1 > r2) return;
else {if($character.is(":visible")) {
$("#character").hide();
if ($("#character").is(':hidden')) {
// ...
document.getElementById("demo").innerHTML = "OYUNU KAYBETTIN!";
health++; // here
}
$("#mavikutu").show();
var audio111 = new Audio('kaybedince.wav');
audio111.play();
} }
}
window.setInterval(function() {
$('#result').text(collision6($('#taskapsa2'), $('#character')));
}, 200);
第三次
collision6();
if (health==3){alert("abc");}
答案 0 :(得分:1)
您正在调用collision6()
函数而没有任何参数,但在函数声明中它需要2个参数来修改健康变量。
您需要将$taskapsa2
和$character
参数传递给collision6函数。