当变量改变时改变函数的声音效果
Changing sound effect on a function when variable changes
我正在写一个JS的作业class,老师希望我们开火时有武器声音,但没有弹药时不发出声音。
我的枪开火时有声音效果,但是当用 0 弹药点击时它会继续发出声音。
我尝试执行 else{} 函数,但这会破坏我浏览器中的 "ammo display",并且声音会继续播放。
HTML:
<input type="button" value="Heal" class="shoot" onclick="shoot();">
<audio id="heal" src="sound/heal.mp3">
JS:显示弹药,最多6发,备用6发,每次开火倒计时。
function shoot() {
if (currentAmmo > 0) {
currentAmmo--;
}
var shoot = document.getElementById("shoot");
shoot.play();
updatescreen();
function updatescreen() {
document.getElementById("total-ammo").innerHTML = "Bullets in Gun:</br>" + totalAmmo;
document.getElementById("current-ammo").innerHTML = "Reload Ammo:</br>" + currentAmmo;
}
您只需要将播放命令移到 if 条件中即可。
if (currentAmmo > 0) {
currentAmmo--;
var shoot = document.getElementById("shoot");
shoot.play();
}
updatescreen();
将 play
调用放在您的 if
语句中,因此它仅在语句为真时播放:
function shoot() {
if (currentAmmo > 0) {
currentAmmo--;
document.getElementById("shoot").play();
}
}
我正在写一个JS的作业class,老师希望我们开火时有武器声音,但没有弹药时不发出声音。 我的枪开火时有声音效果,但是当用 0 弹药点击时它会继续发出声音。
我尝试执行 else{} 函数,但这会破坏我浏览器中的 "ammo display",并且声音会继续播放。
HTML:
<input type="button" value="Heal" class="shoot" onclick="shoot();">
<audio id="heal" src="sound/heal.mp3">
JS:显示弹药,最多6发,备用6发,每次开火倒计时。
function shoot() {
if (currentAmmo > 0) {
currentAmmo--;
}
var shoot = document.getElementById("shoot");
shoot.play();
updatescreen();
function updatescreen() {
document.getElementById("total-ammo").innerHTML = "Bullets in Gun:</br>" + totalAmmo;
document.getElementById("current-ammo").innerHTML = "Reload Ammo:</br>" + currentAmmo;
}
您只需要将播放命令移到 if 条件中即可。
if (currentAmmo > 0) {
currentAmmo--;
var shoot = document.getElementById("shoot");
shoot.play();
}
updatescreen();
将 play
调用放在您的 if
语句中,因此它仅在语句为真时播放:
function shoot() {
if (currentAmmo > 0) {
currentAmmo--;
document.getElementById("shoot").play();
}
}