2014-02-11 25 views
2

我有一个小问题。我的同事在使用Windows XP,因此使用IE 8.因此,我有一些编码,以便人们可以使用Chrome和IE 8和Edge查看它。但是,我想在IE 9上试用它,以防一些可怜的客户拥有IE 9(谁知道,它可能发生!)。我知道我不应该对IE9(我真的不这么认为)扯淡,但现实情况是,我们的大多数客户都很老,可能不会下载更新(因为他们可能不知道如何或不会这样做)麻烦)。我有这种编码,但在IE 9中,视频出现两次,但在IE 8中,如果我添加专门针对IE但不包含IE 9+的选项,则不会在IE 8中出现任何视频。另一方面,如果,我删除了LT IE 9的代码和GTE的IE 9的代码,那么当然它出现在IE 8视频两次出现在IE 9

我一直在寻找了几个小时来解决我的问题,但都无济于事。我的问题是,如何修改我的代码,以便在IE 8,IE 9,IE Edge和Chrome中正确查看它? (顺便说一句,我不得不为了添加注释,如代码此代码才能正常工作,否则代码显示为文本)

<!--[if IE & (lt IE 9)]> 

<object width="408" height="230" type="video/x-ms-asf" url="videos/town-and-country.mp4" data="videos/town-and-country.mp4" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"> 
    <param name="url" value="videos/town-and-country.mp4"> 
    <param name="filename" value="videos/town-and-country.mp4"> 
    <param name="autostart" value="0"> 
    <param name="uiMode" value="full" /> 
    <param name="autosize" value="1"> 
    <param name="playcount" value="1"> 
    <embed type="application/x-mplayer2" src="videos/town-and-country.mp4" width="408" height="230" autostart="false" showcontrols="true" 

pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"></embed> 
</object> 

<![endif]--> 


<!--<![if !IE | (gte IE 9)]>--> 
<video id="" src="videos/town-and-country.mp4" type="video/mp4" controls width="408" height="230"></video> 
<!--<![endif]>--> 

编辑,这些都是我的MODS的现在:

<video src="videos/town-and-country.mp4" width="408" height="230" controls> 
    <source src="videos/town-and-country.webm" type="video/webm"> 


<object width="408" height="230" type="video/x-ms-asf" url="videos/town-and-country.mp4" data="videos/town-and-country.mp4" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"> 
    <param name="url" value="videos/town-and-country.mp4"> 
    <param name="filename" value="videos/town-and-country.mp4"> 
    <param name="autostart" value="0"> 
    <param name="uiMode" value="full" /> 
    <param name="autosize" value="1"> 
    <param name="playcount" value="1"> 
    <embed type="application/x-mplayer2" src="videos/town-and-country.mp4" width="408" height="230" autostart="false" showcontrols="true" 

pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"></embed> 
</object> 
</video> 

回答

0

你不需要条件的意见。尝试将对象放在video标记内。

  • 小于9的IE版本将忽略video标记并默认呈现Windows Media Player对象。
  • 现代浏览器(和IE9 +)将忽略子对象和播放本地视频。

像这样:

<video src="videos/town-and-country.mp4"> 
    <object> 
    // Your fallback WMP object here 
    </object> 
</video> 

作为警告的话,虽然 - 我不认为Windows媒体播放器在XP支持播放MP4文件。 According to Microsoft,只有Windows Media Player 12支持 - 和WMP 12 only works with Windows 7+。另外,您还需要为其他无法播放mp4的浏览器添加视频的webm版本。

+0

我修改了它尝试添加第二个VID扩展。但与IE9,它仍然增加了视频。你可以看看我在OP中添加的编辑。 (MP4随着XP顺便说一句,我试了一下)。 – user3298911

+0

将mp4也放入元素 - 否则src属性将优先。我不确定你现在有什么问题。也许你可以模拟jsbin中的一些工作代码? – TimHayes

+0

它直接复制我的视频,因此我最终有两个。这只发生在IE9中(不是IE8或11,也不是Chrome)。我从来没有使用过jsbin。我这样做似乎错了吗?我无法弄清楚我的生活在做什么错了。但是,这仍然是。 http://jsbin.com/woyah/2/ – user3298911