这是我的第一篇文章,我已经搜索了一些答案,但没有遇到任何解决方案。
基本上我想做的就是使用javascript函数,playSound(声音)使onClick =“”启动和停止音频。这是我到目前为止所结束的。现在,当我点击时没有音频播放,但是当我单独测试单个代码'song1.play()'时,声音会播放,但是再次点击时显然不会停止。希望这不是太难。
function playSound(sound){
var song1=document.getElementById(sound);
var isPlaying = true;
if (!isPlaying){
isPlaying == true;
song1.play();
}
else{
isPlaying == false;
song1.pause();
}
}
答案 0 :(得分:0)
您正在将isPlaying变量与true和false进行比较,而不是将它们分配给变量。这应该现在有效。
function playSound(sound){
var song1=document.getElementById(sound);
var isPlaying = true;
if (!isPlaying){
isPlaying = true;
song1.play();
}
else{
isPlaying = false;
song1.pause();
}
}
答案 1 :(得分:0)
你应该使用=而不是==
= is Assignment运算符,其中as ==是比较运算符。
答案 2 :(得分:0)
两个小的修正。
a)var isPlaying = true;
应该全局声明,以便在多次调用" OnClick"之间保留其值。
b)在{isPlaying'的赋值语句中,==
应更改为=
。变量。
var isPlaying = true;
function playSound(sound){
var song1=document.getElementById(sound);
if (!isPlaying){
isPlaying = true;
song1.play();
}
else{
isPlaying = false;
song1.pause();
}
}
答案 3 :(得分:0)
您可以使用paused
属性检查声音是否暂停:
function playSound(sound) {
var song1 = document.getElementById(sound);
song1.volume = .25; // setting the volume to 25% because the sound is loud
if (song1.paused) { // if song1 is paused
song1.play();
} else {
song1.pause();
}
}
<audio id="sound">
<source src="https://www.w3schools.com/TagS/horse.mp3" type="audio/mp3">
</audio>
<button onclick="playSound('sound')">Play/Pause</button>