我有以下功能来检测支持HTML5的浏览器是否可以播放Mp4文件类型。
function checkCompat()
{
var vidTag = document.createElement('video');
var support = vidTag.canPlayType('video/mp4');
if (support == '')
{
showCompatPopup();
}
}
它按预期工作。问题是IE8不支持canPlayType方法。 See at W3Schools
我希望能够在IE8和其他可能不支持它的浏览器中检测浏览器的HTML5视频标记Mp4文件支持,并且也不支持canPlayType方法。
我同意那些少数人使用useragent.indexOf()那种东西不够可靠而且当然不全面。
我需要将此修复程序作为客户端脚本编写,因为在从光盘运行文件时我还需要执行此操作。
后来添加:
这个功能似乎在IE8中没有错误。 Thanks Philipp
var vidTag = document.createElement('video');
if (typeof vidTag.canPlayType == 'undefined') {
alert ("your browser doesn't support HTML5 video - download a better one");
}
else
{
var support = vidTag.canPlayType('video/mp4');
if (support == '')
alert ("HTML5 works on this");
}
答案 0 :(得分:4)
而不是试图找出用户正在使用哪个浏览器,然后使用它作为猜测它支持什么以及它不支持的内容(猜测可以在每次浏览器更新时过时),你应该只是如果浏览器知道您需要的功能,请直接检查。
var vidTag = document.createElement('video');
if (typeof vidTag.canPlayType == 'undefined') {
alert ("your browser doesn't support HTML5 video - download a better one");
}
答案 1 :(得分:1)
<input type="button" value="Show your browser's name" onclick="javascript:alert(window.navigator.appName);" />
<input type="button" value="Show the version of the browser" onclick="javascript:alert(window.navigator.appVersion);" />
<input type="button" value="Show main info" onclick="javascript:alert(window.navigator.userAgent);" />