Javascript 如何修复未激活的else语句
我正在尝试为我的背景音频创建一个切换开关,而某个else语句将不起作用 我尝试过使用else/else-if并以多种方式设置它,但似乎没有任何效果Javascript 如何修复未激活的else语句,javascript,html,Javascript,Html,我正在尝试为我的背景音频创建一个切换开关,而某个else语句将不起作用 我尝试过使用else/else-if并以多种方式设置它,但似乎没有任何效果 function toggle() { if (!play()) { play(); } //HERE IS THE ONE NOT WORKING// else { mute(); } } function play() { //Sound Icon
function toggle()
{
if (!play()) {
play();
}
//HERE IS THE ONE NOT WORKING//
else {
mute();
}
}
function play()
{
//Sound Icon
document.getElementById('muteB').src = 'MuteOff.png';
//Play Music
document.getElementById('mplayer').innerHTML = ('<source src="GameTheme.mp3" type="audio/mp3">');
}
//MUTE FUNCTION
function mute()
{
//Sound Off Icon
document.getElementById('muteB').src = 'MuteOn.png';
//Stop Music
document.getElementById('mplayer').innerHTML = ('');
}
函数切换()
{
如果(!play()){
play();
}
//这是一个不起作用的//
否则{
静音();
}
}
函数播放()
{
//声音图标
document.getElementById('muteB').src='MuteOff.png';
//演奏音乐
document.getElementById('mplayer')。innerHTML=('');
}
//静音功能
函数mute()
{
//发声图标
document.getElementById('muteB').src='MuteOn.png';
//停止音乐
document.getElementById('mplayer')。innerHTML=('');
}
HTML
<img id="muteB" src="MuteOn.png" onclick="toggle()" />
我希望toggle()函数能够实际切换音频,但我只能将其打开,而不能关闭。您需要创建一个全局变量
isplay
,并相应地在两个函数play
和mute
中进行更改
让isplay=false;
函数切换(){
如果(!显示){
play();
}
//这是一个不起作用的//
否则{
静音();
}
}
函数播放(){
//声音图标
document.getElementById('muteB').src='MuteOff.png';
//演奏音乐
document.getElementById('mplayer')。innerHTML=('');
isplay=true;
}
//静音功能
函数mute(){
//发声图标
document.getElementById('muteB').src='MuteOn.png';
//停止音乐
document.getElementById('mplayer')。innerHTML=('');
isplay=false;
}
您需要创建一个全局变量isplay
,并相应地在两个函数play
和mute
让isplay=false;
函数切换(){
如果(!显示){
play();
}
//这是一个不起作用的//
否则{
静音();
}
}
函数播放(){
//声音图标
document.getElementById('muteB').src='MuteOff.png';
//演奏音乐
document.getElementById('mplayer')。innerHTML=('');
isplay=true;
}
//静音功能
函数mute(){
//发声图标
document.getElementById('muteB').src='MuteOn.png';
//停止音乐
document.getElementById('mplayer')。innerHTML=('');
isplay=false;
}
如果(!play())
但是play
没有返回任何东西对不起,如果这很明显,我会返回什么?你的逻辑真的没有意义。。。你所说的基本上是。。。。运行play
方法,如果结果不正确,请再次运行play
方法,否则运行mute
方法。因此,如果play
方法的结果为false,您可以运行它两次。好的,谢谢您的反馈!如果(!play())但是play
没有返回任何东西对不起,如果很明显,我会返回什么呢?你的逻辑真的没有意义。。。你所说的基本上是。。。。运行play
方法,如果结果不正确,请再次运行play
方法,否则运行mute
方法。因此,如果play
方法的结果为false,您可以运行它两次。好的,谢谢您的反馈!我相信我已经大致弄明白了。