如何在JavaScript中创建一个等待函数,允许您在后台运行音频等内容

How do you create a wait function in JavaScript that allows you to run things in the background like audio?

本文关键字:许您 函数 运行 等内容 音频 等待 后台 JavaScript 创建 一个      更新时间:2023-09-26

我将其创建为一个简单的等待脚本,但它最多只能将整个脚本冻结时间秒。

function wait(time)
{
var x = 0;
var y = time * 500000000;
while (x<y)
{
x++
}
}

我需要的是一个可以延迟脚本的代码,这样我就可以播放声音,因为我的脚本循环并有大量的警报,所以在脚本结束之前不会播放声音。

这是我用来播放声音的脚本:

<div id="dummy"></div>
<script type="text/javascript">
function playSound(sound)
{
if (sound==1)
{
document.getElementById("dummy").innerHTML = '<embed type="audio/mp3" src="http://www.myinstants.com/media/sounds/sound-8.mp3" autoplay="true" hidden="true" width="0" height="0" loop="false">';
}
}
</script>

是的,我在另一个脚本中调用了playSound(1)

如果不完全冻结UI,就无法在Javascript中创建阻止(即强制调用方等待它完成)的函数。

setTimeout、回调以及可能的Promises视为异步执行这些操作的方法。

  • https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers.setTimeout
  • http://www.html5rocks.com/en/tutorials/es6/promises/

如果我说得对,我相信您会使用setTimeout方法。你可以在这里阅读更多关于它的内容,你会发现一些例子。

这里有一些短

    <script>
    function myFunction() {
        setTimeout(playSound, 1000, sound);
    }
and call it wherever you need
    </script>
相关文章: