javascript - 为什么这会不断触发多个警报?

标签 javascript

我正在尝试制作动画,这里有一段代码:

Enemy.prototype.update = function () {
    var tx = 650 - this.x;
    var ty = 250 - this.y;
    var dist = Math.sqrt(tx * tx + ty * ty);
    this.velx = (tx / dist)* this.speed;
    this.vely = (ty / dist)* this.speed;
    var distround = Math.floor(dist);
    if (distround > 0) {
        this.x += this.velx;
        this.y += this.vely;
    } else if (this.transparency != 0){
      alert("You lose!");
      location.reload(true);
    }
};

我想如果我在警报后刷新页面,那就没问题了,但有时在刷新之前会弹出大量警报框...我该如何阻止这种情况?完整代码在这里:(警告,会触发多个警报...最好不要使用safari打开) http://jsfiddle.net/nLxLpvry/

最佳答案

这是因为每个敌人都有一个调用警报update方法。因此,当所有敌人消失时,所有敌人都会发出警报,这会导致显示许多警报消息。

关于javascript - 为什么这会不断触发多个警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29741779/

相关文章:

javascript - 在javascript中的函数内声明一个不带var的变量

javascript - 下拉列表中的keydown事件

javascript - TrackballControls - "staticMoving"属性有什么作用?

javascript - 是否可以检测网络应用程序上的 Android 后退按钮?

javascript - jquery ui 自动完成选择菜单 html 实体(&符号和引号)

javascript - 从 Angular 应用程序调用nodejs中的函数

javascript - X-水平显示的可编辑 list

javascript - 简单的股票代码 (jQuery)

javascript - 获取给定概率的伪随机项

javascript - 从父选择列表创建子类别选择列表