Javascript 功能无法正常工作
当敌人发射激光时,我的功能有问题。我已经对此做了很多调试,我只是不明白为什么它不工作 当我有这样的代码时,它会射向游戏区的顶部,但不会射向底部边界。拼写错误,因为我从一开始就这么做了Javascript 功能无法正常工作,javascript,dom,canvas,Javascript,Dom,Canvas,当敌人发射激光时,我的功能有问题。我已经对此做了很多调试,我只是不明白为什么它不工作 当我有这样的代码时,它会射向游戏区的顶部,但不会射向底部边界。拼写错误,因为我从一开始就这么做了 for (var i = 0; i < enemylasers.length; i++){ if(parseInt(enemylasers[i][0].style.top) > playArea.topBoundry){ enemylasers[i][1] -=
for (var i = 0; i < enemylasers.length; i++){
if(parseInt(enemylasers[i][0].style.top) > playArea.topBoundry){
enemylasers[i][1] -= laserSpeed;
enemylasers[i][0].style.top = enemylasers[i][1] + 'px';
}else{
playArea.removeChild(enemylasers[i][0]);
enemylasers.splice(i,1);
}
}
这就是为我的敌人激光创造div的原因
function enemylaser(){
return document.createElement('div');
}
我希望有人能帮助我,我对javascript不是很有经验,但我知道安静的技巧。因为@Chips\u 100建议我应该在这里的评论部分发布我的解决方案,这里是:
您需要将ParseInteneMyalers[i][0].style.top>playArea.bottomBoundry更改为ParseInteneMyalers[i][0].style.top
function createenemylaser(){
if(enemylasers.length < enemymaxlasers){
var laserpush = Math.floor(Math.random()*enemies.length);
var laser = enemylaser();
laser.classList.add('enemylaser');
laser.style.top = enemies[laserpush][1] + 'px';
laser.style.left = parseInt(enemies[laserpush][0].offsetLeft) +'px';
playArea.appendChild(laser);
enemylasers.push([laser, enemies[laserpush][1]]);
}
}
setInterval(createenemylaser, 2000);
enemylasers=[],
enemylaserspeed = 5,
enemymaxlasers= 8,
function enemylaser(){
return document.createElement('div');
}