如何为我的应用添加静音按钮?

时间:2015-07-14 15:05:34

标签: javascript android jquery audio

我的应用中有一些发出声音的事件。

例如,

  • 循环播放的背景音乐
  • 点击背景发出声音
  • 当两个矩形碰撞时发出声音

我想要的是一个按钮,当点击时可以让声音播放而不让它们播放。

我不想在每个声音上加载if语句,所以有解决方法吗?

这就是我现在如何调用我的声音

//HTML
    <div id='mainRight'></div>

//JS
var mainRight = $('#mainRight');
    $(mainRight).width(windowDim.width/2).height(windowDim.height);
    $(mainRight).addClass('mainRight');

    var sounds = {

        coinHit : new Audio('./sound/coinCollect.wav'),
        playerClick : new Audio('./sound/playerClick.wav'),
        gameOver : new Audio('./sound/gameOver.wav'),
        backgroundMusic : new Audio('./sound/backgroundMusic.wav')

    }

    sounds.backgroundMusic.addEventListener('ended', function() {
        this.currentTime = 0;
        this.play();

    }, false);
    sounds.backgroundMusic.play();
    sounds.backgroundMusic.volume = 0.01;

    $('#mainRight').click(function()
    {
        sounds.playerClick.load();
        sounds.playerClick.play();
    }

1 个答案:

答案 0 :(得分:1)

试试这个......

function toggleAudio() {
    for(var key in sounds) {
        sounds[key].muted = !sounds[key].muted;
    }
}

每次按下静音按钮时都会触发。它将切换Audio对象中每个sounds对象的静音状态。