日期:2014-05-16  浏览次数:20368 次

【求助】JS IE拒绝访问 和 在网页中播放声音
我想要实现的功能是根据下拉菜单中所选择的内容不同,在点击播放按钮时可以播放不同的音乐
大致代码如下:
(1)HTML
HTML code
<select name="select" class="reg_tdform_2" id="sel1" onChange="changeSound();">
        <option selected="selected" value="<%=basePath%>sound/111.wav">报警声音1</option>
        <option value="<%=basePath%>sound/222.wav">报警声音2</option>
        <option value="<%=basePath%>sound/333.wav">报警声音3</option>
        <option value="<%=basePath%>sound/444.wav">报警声音4</option>
        <option value="<%=basePath%>sound/555.wav">报警声音5</option>
      </select>
      <embed id="alert" src="<%=basePath %>sound/111.wav" loop="false" autostart="false"  mastersound hidden="true" type="application/x-mplayer2" ></embed>
      <img src="<%=basePath %>img/30.gif" width="15px" height="15px" onclick="playSound('play');"/>      

(2)JavaScript
JScript code

 <script type="text/javascript">
  function changeSound(){
    var obj = document.getElementById("sel1");
    document.write("原本的路径是:"+document.getElementById("alert").src);
      selindex = obj.selectedIndex;  
      document.write("选择了第"+selindex+"个选项");
      sndsrc = obj.options[selindex].value; 
      document.write("该声音的路径是:"+sndsrc);
      document.getElementById("alert").src = sndsrc;
  }
 </script>
 <script type="text/javascript">
        function playSound(action){
            var soundControl = document.getElementById("alert");
            if(action=="play"){
                soundControl.play();
            }
        }
    </script>

在下有两个问题想要求助大侠们:
1.点击播放音乐时,只有IE的好用 chrome FF都要求安装插件 可是这插件又死活安装不上。。。。。
采用的是wav格式的音乐,不知道是不是embed标签里的type属性设置的不对。bgsound也用过,可是三种浏览器全都不好使。。。。。
而且如果把音乐换成.mid格式的,三种都无法播放。
2.选择不同音乐时,触发“changeSound()”函数,chrome、FF都可以打印出我在JS里面要求打印的东西
但是IE却在obj.selectedIndex;处报错:SCRIPT5: 拒绝访问。
实在搞不懂这两个问题是怎么回事,还请各位大侠帮帮忙啊!~!!

------解决方案--------------------
embed 是完整的吗?
先要保证能使用,再加上你的代码