2012-11-10 106 views
1

点击播放音频标签HTML5时,我有点点代码。在所有浏览器中正常工作。我最近试图将其转换为在页面打开时自动播放(不需要点击)。在Chrome和FF中工作正常,但不会在IE中播放......尽管我没有看到明显的错误。HTML5音频自动播放IE不播放

// add a 'self play' function on a wrapper div 
jQuery('.autoplay').each(function(i) { 
      if(jQuery(this).attr("rel")) { 
       var xv = jQuery(this); 
       x = jQuery(this).attr('rel') + ext;            
       audioElements.push(document.createElement('audio')); 
       //alert(audioElements.length); 
       //alert(xv); 
       // alert(x); 
       y = audioElements.length-1; 
       audioElements[y].setAttribute('src', x); 
       audioElements[y].load(); 
       audioElements[y].addEventListener("canplay", function(){ xv.addClass('canplay'); });    
       // audioElements[y].currentTime=0;      
       audioElements[y].play(); 
       // alert(x); 
       return true; 
      } 
     }); 

该活的网站是http://jchmusic.com。但是,再次,如果你去http://jchmusic.com/songs-from-detroit并点击任何图标,相同的基本代码工作正常。

任何想法?

+0

什么版本的IE? –

+0

我不是jQuery的最佳人选,所以我会留下一个修复/解决方法给能够给你一个准确和正确答案的人。我可以告诉你的是,音频标签是HTML5的新增功能,并且在IE8及更早版本中不受支持。有关更多信息,请参阅http://www.w3schools.com/html5/att_audio_autoplay.asp。 –

+0

Tnanks的建议。正如我所说的,代码工作 - 精细 - 如果附加到点击功能。我正在使用IE9。 – jchwebdev

回答

0

尝试包括本

<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> 

这个JavaScript通知IE有关新的HTML5元素

+0

我会给它一个镜头,但由于代码在用作点击功能时起作用,所以我想知道这是否有必要。我已经做了一些基本的测试,音频对象加载没有错误。 – jchwebdev

+0

此来源网址不再有效。 – phirschybar

0

废话...浪费了很多时间思考,这是一个代码问题。这显然是MP3的问题,我不明白,但那是另一回事。 MP3本地播放良好。

我没有看到它的原因是我有每首歌的MP3,OGG和WAV版本,所以显然其他浏览器正在退回到备用文件类型......但IE不能。

如果我简单地测试了MP3,我会为自己省去麻烦。

Anyhoo ...我重新呈现的MP3和新版本在IE中正常工作。奥德姆的剃刀。奥德姆的剃刀。奥德姆的剃刀。