Soundmanager 2:播放另一个声音时停止播放声音

Posted

技术标签:

【中文标题】Soundmanager 2:播放另一个声音时停止播放声音【英文标题】:Soundmanager 2 : Stop a playing sound when playing another 【发布时间】:2012-09-26 17:08:30 【问题描述】:

`

soundManager.onload = function() 
 // soundManager.createSound() etc. may now be called
 soundManager.createSound(
 id:'myMp3', url:'audiofiles/my.mp3', onfinish:function()  
 
 //window.location.href='index.html'
 
 );
soundManager.createSound(
 id:'yMp3', url:'audiofiles/y.mp3', onfinish:function()  
 
 //window.location.href='index.html'
 
 );  
 ; 

`

您好,我已经创建了两个声音,它们将通过两个不同链接的 onClick 事件播放。当一个声音正在播放时,我点击另一个链接,两个声音同时播放,我想知道当一个新的声音被触发时如何停止播放以前的声音! 谢谢

【问题讨论】:

【参考方案1】:
$(".close-reveal-modal").click( function() 
    soundManager.stopAll();
);

【讨论】:

你能补充一些描述吗?【参考方案2】:

您会希望在制作完成后保留对声音的引用。例如:

sounds = [
 new Audio("audiofiles/my.mp3"),
 new Audio("audiofiles/y.mp3")
];

sounds[0].play();

您可以通过声音[0].addEventListener 添加花哨的事件侦听器。如需暂停播放,请使用:

sounds[0].addEventListener("play", function() 
  sounds[1].pause();
);

交替:

document.getElementById("presstoplaysound").onclick = function() 
  sounds[1].pause();
  sounds[0].play();
;

【讨论】:

以上是关于Soundmanager 2:播放另一个声音时停止播放声音的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Android SoundManager 有时会播放两次声音?

可以减少 Android 上的 SoundManager 2 延迟吗?

在播放另一个声音之前停止一个声音

播放和停止声音(2 次观看)

如何停止 AudioToolbox 声音?

使用 Javascript/Jquery 停止 html 声音