2015-08-27 184 views
2

背景故事:
我刚刚花了一整天试图找出为什么我的HTML5视频和音频标签没有被工作IE11IE10当我上传到到一个特定的LMS(在任何其他浏览器中完美工作)。
我把它剥离了,现在这就是HTML文件中的所有东西。HTML5视频和音频不工作

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>Untitled Document</title> 

</head> 
<body> 
    <video controls> 
     <source src="video.mp4" height="450px" width="800px"/> 
    </video> 
</body> 
</html> 

,你可以看到很简单,在IE11和IE10本地工作,并且这些文件是绝对的LMS,我可以链接到他们。只有当他们使用HTML5视频标签时,才会出现任何内容 - 字面上是白色屏幕。

问题:
当内容由LMS加载时,有一系列嵌套的框架,如下所示。 (请注意,我删除了所有内联属性{有堆})。

<html> 
<head></head> 
<frame> 
    <frame> 
     <frame> 
      // This is where my HTML lives. 

在头顶部的标签,我不能改变,就在于这个坏小子:<meta http-equiv="X-UA-Compatible" content="IE=8">。现在我可能不正确,但我认为这是问题的根源,因为ie8文档标准会否定任何HTML5标签...?

问题:
有什么方法可以用<meta http-equiv="X-UA-Compatible" content="IE=edge">来覆写这个元标记吗?
或随后,我可以重新配置文档标准/模式,而不刷新页面(刷新自动关闭窗口{LMS/SCORM功能}),在我的框架内或以上与JavaScript等。或者我是否需要尝试让LMS Tech窥视他们的源代码?

更新:
发现以下情形时,我添加<meta http-equiv="X-UA-Compatible" content="IE=8">的DOM从原来的更改为:

<video controls></video> 
    <source src="video.mp4" height="450px" width="800px"/> 
</video><//video> 
+0

在这里看到一些建议:http://stackoverflow.com/questions/15639444/how-do-i-get-a-html5-video-to-work-using-ie10 – Papa

+0

谢谢@Papa,我没有在我的搜索中遇到这种情况,但所有这些为我结帐,我可以让页面在本地和在服务器上工作...我也可以获取所有视频加载,如果他们在瑞士法郎,所以MIME类型也是准确的。我很确定它的x-ua兼容meta标签! - 但感谢您的建议:)。 – Zze

回答

1

这里真正的答案是你真的应该联系LMS技术人员。他们确实需要更新他们的代码,因为它确实过时了。

我跑了一些测试使用<meta http-equiv="X-UA-Compatible" content="IE=8">,我遇到了视频加载的问题。 (我在IE 11中测试过)。据说,我也相信<frame>标签也存在问题。

X-UA-Compatible需要更新到IE=edge<frame>应该被删除。

不幸的是,我不知道重写X-UA-Compatible标签。我相信(虽然不是100%肯定)IE会在父文档中看到X-UA-Compatible标签并使用它。

如果你不能让LMS技术人员及时更新他们的代码,你可以尝试几个选项。我不知道这些能否解决您的问题,但值得一试。

  • 将视频上传到YouTube或类似的视频托管服务,并使用iFrame嵌入视频。

  • 如果因为某些原因无法使用视频托管服务,请尝试将托管视频放到您控制的服务器上,然后使用iFrame嵌入视频。

  • 尝试在网站中使用mediaelement.js作为解决兼容性问题的解决方法。

再次,真正的解决办法是让LMS更新他们的代码,否则,你必须要找到一些变通的作品。

+0

非常感谢您过来检查我的问题!我一定会联系LMS团队,因为托管我们所有的视频并不是这个当前项目的理想选择。再次感谢!一旦我与他们联系,我会尽快回复。 – Zze

+0

他们将改变标签! - 谢谢! – Zze

+0

@Zze - 很好听。 => – L84

0

您的实际问题是,你正在使用的obsolete and removed from HTML<frame>元素。 浏览器已停止支持此标记。您应该尝试将其转换为。

从我的测试中,<meta http-equiv="X-UA-Compatible" content="IE=8">不会阻止您的浏览器加载视频元素。

+0

有趣,所以你说这不是事实,他们强迫IE8传统模式,其实际是因为帧?缺点是它的HTML是一个非常有限的环境,我将不得不联系LMS公司,让他们改变这种情况,如果是这样的话! – Zze

+0

那么这就是我的测试中出现的情况,出于安全原因,我肯定'''元素已从Web标准中删除。你可以通过试图显示一些文本来检查自己,这将不会干扰任何兼容性模式 – Kaiido

+0

我已经添加了一个更新的问题,我似乎无法复制它与'框架'它只是将其从当我在HTML中添加一个DOM ..?我非常感谢帮助。我在这里压缩了一个小测试视频和一个HTML文件https://www.dropbox.com/s/8yq9lx9xtk59kz2/XUA_Test.zip?dl=0如果您有兴趣,..我仍然可以复制我的问题时我添加了“X-UA兼容的IE8”并关闭并重新打开标签页/窗口。非常感谢帮助。 – Zze