声音明明就在confirm之前,为什么弹出确认框后,声音却没有播放呢??
而且只有在点击了确认或取消后才会播放声音
不过........我之前测试过是可以的啊...是可以在弹出确认框前播放声音的...后来代码改来改去,都忘了之前是怎么写的了...btw,测试过用setTimeout来延迟confirm的时间,但还是无法播放声音,声音必须在点击确认框后才播放<bgsound id="sou" volume="0"/>
var x = document.getElementById("sou");if(xxx===1) {
  x.src="./ok.wav";
} else if(xxx===2) {
  x.src="./error.wav";
  if(confirm("error! Continue?")) {
    xxxx......xxx
  }
}

解决方案 »

  1.   

    设置它的src直接就可以播放了??!!是不是和异步有关系吗!
      

  2.   

    使用div自定义的confirm来实现
    系统的confirm会阻塞线程,所以声音也不会播放
      

  3.   

    js输出alert必须结束了才继续执行
      

  4.   

    >>测试过用setTimeout来延迟confirm的时间,但还是无法播放声音按说这样应该会播放啊,是不是x.src="./error.wav";之后还要一个开始播放的函数啊。
    声音从来没弄过的说。
      

  5.   

    x.src="./error.wav 完了之后,需要加一个play方法
      

  6.   

    我帖的代码我曾经试过,声音是可以在confirm之前播放的,但是不知道后来改了哪里...就死活无法在confirm前播放了...根本就没play方法啊...我试过了,提示没有这个方法...
    我前段时间自己解决了(当时0回复..到了今天一回复就7个回复...)
    不过我是直接用php 的echo输出,这样肯定比javascript的执行优先级高了...