我尝试过使用:
createjs.Sound.pause;
mySound.stop();
没有任何作用。现在它有一个停止按钮,但如果按下停止按钮,则不会再次播放声音。
这是我正在使用的声音。 soundjs
我的代码与它的源代码完全相同。谢谢你的帮助!
我最终这样做基于Stephen Lightcap回答:
头标记内的Javascript:
function load() {
// Update the UI
document.getElementById("display").innerText = ".";
// Load the sound
createjs.Sound.alternateExtensions = ["mp3"];
createjs.Sound.addEventListener("fileload", handleFileLoad);
createjs.Sound.registerSound({id:"mySound", src:"../../test.mp3"});
}
function handleFileLoad(event) {
// Update the UI
document.getElementById("display").innerHTML = ".";
document.getElementById("stopBtn").disabled = "";
// Play the loaded sound
createjs.Sound.play(event.src,{loop:2});
}
var instance = createjs.Sound.play(event.src);
</script>
正文标记内的按钮:
<input id="pausBtn" type="button" value="Pause" onclick="pause()"/>
点击按钮的Javascript。放在按钮下方。 :
<script>
function pause(){
instance.pause();
}
</script>
但是我说错了:
未捕获的TypeError:无法读取未定义的属性“pause” 暂停时(phkk.html:560) 在HTMLInputElement.onclick(phkk.html:177)
答案 0 :(得分:0)
您可以将其存储在var中,然后使用函数pause()
var instance = createjs.Sound.play(event.src);
具有调用将存储暂停的方法的按钮
<input id="pausBtn" type="button" value="Pause" onclick="pause()"/>
JS功能:
function pause(){
instance.pause();
}
修改强>
我查看了文档,它似乎不再具有这样的功能,因此您将不得不使用paused property
以下是关于它如何为我工作的大致轮廓:
<script>
var instance;
function load() {
// Update the UI
document.getElementById("display").innerText = ".";
// Load the sound
createjs.Sound.alternateExtensions = ["mp3"];
createjs.Sound.addEventListener("fileload", handleFileLoad);
createjs.Sound.registerSound({id:"mySound", src:"../../test.mp3"});
}
function handleFileLoad(event) {
// Update the UI
document.getElementById("display").innerHTML = ".";
document.getElementById("stopBtn").disabled = "";
// Play the loaded sound
instance = createjs.Sound.play(event.src,{loop:2});
}
function pause(){
instance.paused ? instance.paused = false : instance.paused = true;
}
</script>
HTML按钮:
<body>
<input id="loadBtn" type="button" value="Begin Loading" onclick="load()"/>
<input id="stopBtn" type="button" value="Stop Playing" onclick="createjs.Sound.stop();" disabled="disabled" />
<input id="pauseBtn" type="button" value="Pause" onclick="pause()"/>
<label id="display">Waiting for User Input. Click "Begin Loading".</label>