在javascript中获取浏览器类型

ric*_*iot 2 javascript browser html5 user-agent html5-video

我需要根据浏览器类型加载不同的电影格式.特别是如果用户使用的是Firefox,那么我需要加载一个.ocv视频.

我尝试过使用:

alert(navigator.appName); 
Run Code Online (Sandbox Code Playgroud)

但这总是在chrome和firefox中返回'Netscape'?

还有更好的选择吗?

干杯

jap*_*ott 5

停!!!所有提出的解决方案都是网络被破坏和破坏的原因!

不要假设一个浏览器,根据你用户代理的名称,可以做某事或不做,只因为它是IE,Firefox或Chrome.UserAgent可以伪造!手动进行特征检测或使用像Modernizr这样的全功能物品

您想要做的是通过javascript提供.检查浏览器是否可以进行html5视频播放;

var canHtml5Video=function(){
    return !!document.createElement("video").canPlayType;
}
Run Code Online (Sandbox Code Playgroud)

要检查浏览器是否可以播放某种类型(mp4,ogg),请使用音频/视频元素的canPlayType方法.

var elem=document.getElementsByTagName("video")[0];
if (elem.canPlayType("video/mp4")===""){
    //handle firefox and all browser that cant pay the mp4 royality fee
}
else{
    //handle mp4
}
Run Code Online (Sandbox Code Playgroud)

Alternativ,您只需向视频元素添加多个源元素即可.浏览器将选择最合适的选项.

<video>
    <source src="http://....mp4" type="video/mp4" />
    <source src="http://....ocv" type="video/ogg" />
</video>
Run Code Online (Sandbox Code Playgroud)