js代码执行的先后顺序的问题

bug810 2017-03-17 03:32:13
请教大家一个问题,

<embed src="../../msgcenter/bibi.mp3" autostart="true" loop="false" hidden="true" id="sound" runat="server" height="0" width="0" ></embed>
<Script Language='JavaScript'>window.alert('××××××××××××××××××××××××××××××××××\n该单不存在!\n××××××××××××××××××××××××××××××××××');</script>

我是想让弹出提示对话框前先响声音,这样的话可以起到提醒的作用,因为工作人员都是大批量的条码枪扫单,但是运行的结果却是先弹出对话框,用鼠标点击了对话框的确定按钮后才会响声音,就起不到提示的作用了,怎么样才能先响提示音而不要必须点确定才会响,就剩下20分了,全部给了
...全文
591 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Navymk 2017-03-17
  • 打赏
  • 举报
回复
alert是主线程阻塞运行,音频加载是异步进程,这种写法不可能实现你要的效果。 此外,播放还需要等待音频数据加载完成才可以播放。 如果用audio标签模拟你的想法,我会这么做:


var audio = document.querySelector('audio');
audio.onload = function(e){
  this.play();
  alert('xxxxxx')l
};
audio.src = 'xxxxxxxx';

2017-03-17
  • 打赏
  • 举报
回复
不要用系统自带的alert,换成弹窗插件,就不影响了.
hongyuan98786811 2017-03-17
  • 打赏
  • 举报
回复
<Script Language='JavaScript'> let timer clearTimeout(timer); timer = setTimeout(function () { window.alert('××××××××××××××××××××××××××××××××××\n该单不存在!\n××××××××××××××××××××××××××××××××××'); }, 1000) </script>
蚂蚁上树 2017-03-17
  • 打赏
  • 举报
回复
http://www.softwhy.com/forum.php?mod=viewthread&tid=14776 看看这个
hongyuan98786811 2017-03-17
  • 打赏
  • 举报
回复
放在定时器里试试

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧