有loop和autostart 
loop指定为2
autostart指定为true试试

解决方案 »

  1.   

          function openplay(strURL,iloop) {
                var em = document.createElement("embed");
                em.autostart = true;
                em.loop = iloop;
                em.width = "1";
                em.height = "1";
                em.src = strURL + '.mp3';
                document.documentElement.appendChild(em);
            }下面的调用都是只播放一遍:
        <input type="button" value="L" onclick="openplay('mp3/01',1);" />
        <input type="button" value="R" onclick="openplay('mp3/01',2);"/>
      

  2.   

    偷個小懶,希望能幫到你
    http://baike.baidu.com/view/678116.htm
      

  3.   

    <embed src="mp3/err.mp3" loop="2" autostart=true  playcount=true />晕啊,上面的代码,在Chrome中,只播一遍。在IE7中,则是不停的循环!
      

  4.   

    IE中Media Player有个PlayStateChange用来捕捉播放器事件的,假如你有一个Media Player播放器
    <object id="wmPlayer" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112" type="application\/x-oleobject" standby="正在加载播放器">
    ……
    ……</object>
    在它下面多写一行
    <script type="text/javascript" event="playStateChange(ps)" for="wmPlayer"> evtPSChg(ps); </script>然后你就可以自己定义一个evtPSChg,例如:
    function evtPSChg(ps){
    /*
    0 播放已经停止(mpStopped) 
    1 播放暂停(mpPaused ) 
    2 正在播放(mpPlaying) 
    3 正在等待流开始(mpWaiting) 
    4 向前搜索(mpScanForward) 
    5 向后搜索(mpScanReverse) 
    6 向前跳跃(mpSkipForward) 
    7 向后跳跃(mpSkipReverse) 
    8 流已经关闭(mpClosed)
    */
    switch(ps){
       case 8:
          /*
    这里就是当前已经播放完成了
    你可以在播放每段mp3之前,先使用类似于cookie或存储于某个对象当中的方式保存当前mp3的已播放次数
    每播放完一次+1,初始值为0,如果你预设的是每段播放两次,但已经播放过的次数小于2,就重新播放
    */
          break;
    }
    }在使用的播放器代码与上面提供的一致的前提下,IE中这么操作是绝对可行的。就这么个思路,仅供参考
      

  5.   

    <script type="text/javascript" event="playStateChange(ps)" for="wmPlayer"> evtPSChg(ps); </script>
    上面这段是写在播放器上面还是下面记不太清楚了,不知道有没有区别,你可以自己试一下
      

  6.   

    按楼上的办法改用Media Player,确实好控制多了:但是,Media Player提供了一个playCount参数属性,却不能在javascript中控件,很是奇怪:
     function openPlay2(strURL, iloop) {
                document.player.playCount = "2";  //iloop 不起效
                document.player.URL = "mp3/Err.mp3";
                document.player.controls.play();
            }<object  width="400" height="64" classid="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6"   
    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." 
    type="application/x-oleobject" hspace="5" id="player">
    <param name="autostart" value="false" /> 
    <param name="showstatusbar" value="true" /> 
    <param name="showtracker" value="true" /> 
    <param name="showcontrols" value="true" /> 
    </object>
    <input type="button" value="W" onclick="openPlay2('mp3/Err',2);" />
    如果初始化页面,直接在<object>里加一条标签
    <param name="playCount" value="2" />却是可以放2遍的:<object  width="400" height="64" classid="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6"   
    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." 
    type="application/x-oleobject" hspace="5" id="player">
    <param name="autostart" value="false" /> 
    <param name="showstatusbar" value="true" /> 
    <param name="showtracker" value="true" /> 
    <param name="showcontrols" value="true" /> 
    <param name="playCount" value="2" />
    </object>
      

  7.   

    如果试过浏览器的兼容性以后,加上playCount还是可以播放两次的话,那你的问题不就已经解决了呀
      

  8.   

    静态HTML网页是能播放2次了,但无法实现动态控制,比如点A按钮播一次,点B按钮播2次。
      

  9.   

    静态HTML网页是能播放2次了,但无法实现动态控制,比如点A按钮播一次,点B按钮播2次。
    试试:将playCount改成了PlayCount,大小写问题 
    document.player.PlayCount = "2";  //iloop 不起效按理来说,上面的代理应该可以解决你的问题了.如果不行,你不妨再去找找Media Player控制器方面的东西.
    实在不行,那不做过多考虑的前提下,给你一个最最最暴力的方法点击按钮时,重构播放器,该播放一次的