2017-01-19 13 views
0

私は1つのリンクしか持っていないので、クリックするたびに違う音を再生したい。私は、リンクをクリックするとそれが果たしている、両方同時に聞こえるが、私はあなたが最後にクリックされたサウンドチェックそれから機能を作る必要があり、時間JS - クリックごとに異なる音を再生する

var bleep = new Audio('hello.mp3') ; 
bleep.src = "hello.mp3" ; 

var bleep2 = new Audio('goodbye.mp3') ; 
bleep2.src = "goodbye.mp3"; 



    <a href="#" onclick="bleep.play('hello.mp3'); bleep2.play('goodbye.mp3');">Home</a> 
+0

ボタンがクリックされたときに音が再生されるかが決まり何? –

答えて

2

に一つの音が欲しいです。また、.srcプロパティを設定するか、文字列をthe play methodに渡す必要はありません。

JS:

var bleep = new Audio('hello.mp3'); 

var bleep2 = new Audio('goodbye.mp3'); 

var playFirst = true; 
function playSound() { 
    if (playFirst) { 
    bleep.play(); 
    } else { 
    bleep2.play(); 
    } 
    playFirst = !playFirst; 
} 

HTML:

<a href="#" onclick="playSound()">Home</a> 
2

代わりonclickとしてイベントリスナーをインラインに取り付ける、JSはaddEventListenerを使用してそれを添付。これは、あなたは、オーディオクリップを再生するためにどの選択することができます:

var helloSound = new Audio('hello.mp3'); 
helloSound.src = "hello.mp3"; 

var goodbyeSound = new Audio('goodbye.mp3'); 
goodbyeSound.src = "goodbye.mp3"; 

var homeLink = document.getElementById('home-link'); 

homeLink.addEventListener('click', function() { 
    if (/* condition to play hello */) { 
     helloSound.play(); 
    } else { 
     goodbyeSound.play(); 
    } 
}); 

マークアップ:

<a href="#" id="home-link">Home</a> 
関連する問題