一、Navigator

属性:

1)appcodeName  返回浏览器代码名

2)appminorVersion  返回浏览器次级版本

3)appname  返回浏览器名称

4)browserLanguage  返回当前浏览器语言

5)cookieEnabled   返回当前浏览器是否启用cookie的布尔值

6)cpuClass   返回浏览器系统的 CPU 等级。

7)onLine  返回浏览器是否处于脱机模式的布尔值

8)platForm  返回运行浏览器的操作平台

9)systemlanguage   返回OS使用的默认语言

10)userAgent   返回由客户机发送服务器的user-agent头部的值

11)userLanguage   返回OS的自然语言设置

二、为什么不能直接使用appname属性来获取浏览器名称

1、通过在不同的浏览器测试弹出navigator.appname  发现谷歌、火狐还有一些浏览器弹出的是“”Netscape"

网上答案是:

appName 不是内核名称,根据w3c html5规范,navigator对象的appName 要么返回Netscape,要么返回浏览器的全名,这是为了兼容性考虑的。

三、判断是什么浏览器的方法

复制:https://blog.csdn.net/AinUser/article/details/78994346

<pre name="code" class="javascript">;

(function($){

$.extend({

    NV.name=!-[1,]?'ie':
(UA.indexOf("firefox")>0)?'firefox':
(UA.indexOf("chrome")>0)?'chrome':
window.opera?'opera':
window.openDatabase?'safari':
'unkonw';
}catch(e){};
try
{
NV.version=(NV.name=='ie')?UA.match(/msie ([\d.]+)/)[1]:
(NV.name=='firefox')?UA.match(/firefox\/([\d.]+)/)[1]:
(NV.name=='chrome')?UA.match(/chrome\/([\d.]+)/)[1]:
(NV.name=='opera')?UA.match(/opera.([\d.]+)/)[1]:
(NV.name=='safari')?UA.match(/version\/([\d.]+)/)[1]:
'0';
}catch(e){};
try
{
NV.shell=(UA.indexOf('360ee')>-1)?'360极速浏览器':
(UA.indexOf('360se')>-1)?'360安全浏览器':
(UA.indexOf('se')>-1)?'搜狗浏览器':
(UA.indexOf('aoyou')>-1)?'遨游浏览器':
(UA.indexOf('theworld')>-1)?'世界之窗浏览器':
(UA.indexOf('worldchrome')>-1)?'世界之窗极速浏览器':
(UA.indexOf('greenbrowser')>-1)?'绿色浏览器':
(UA.indexOf('qqbrowser')>-1)?'QQ浏览器':
(UA.indexOf('baidu')>-1)?'百度浏览器':
'未知或无壳';
}catch(e){}
switch(name)
{
case 'ua':
case 'UA':br=UA;break;
case 'name':br=NV.name;break;
case 'version':br=NV.version;break;
case 'shell':br=NV.shell;break;
default:br=NV.name;
}
return br;
}
});
})(jQuery);

js 判断是什么浏览器加载页面的更多相关文章

  1. 为不同分辨率单独做样式文件,在页面头部用js判断分辨率后动态加载定义好的样式文件

    为不同分辨率单独做样式文件,在页面头部用js判断分辨率后动态加载定义好的样式文件.样式文件命名格式如:forms[_屏幕宽度].css,样式文件中只需重新定义文本框和下拉框的宽度即可. 在包含的头文件 ...

  2. JS判断访问设备(userAgent)加载不同页面 JS判断客户端操作系统类型(platform)

    //平台.设备和操作系统 var system ={ win : false, mac : false, xll : false }; //检测平台 var p = navigator.platfor ...

  3. JS 判断滚动底部并加载更多效果。。。。。。。。。

    JS 判断滚动底部并加载更多效果......... <html lang="zh-cn"> <head> <meta http-equiv=" ...

  4. webclient 比浏览器加载页面慢的一个问题

    测试中发现webclient 比浏览器加载页面慢的一个问题:原因WebClient 支持 gzip, deflate,但是未设置 解决方案: class WebClientEx : WebClient ...

  5. js判断flash文件是否加载完毕

    轮询判断加载进度 img的加载完成有onload方法,一直不知道该怎么判断swf文件是否加载完毕了? 在应用中使用了轮询判断加载进度值PercentLoaded是否达到100,经测试,可以达到效果. ...

  6. 解决手淘lib-flexible.js在移动端首次加载页面页面先放大后正常问题

    例如这样 然后这样 出现这样的原因一般是   静态的,即html里有一些静态的(即非js动态添加的) 如果在页面加载完成后,页面是用js动态添加的,这个问题就不太明显, doc.addEventLis ...

  7. 浏览器加载显示html页面内容的顺序

    我们经常看到浏览器在加载某个页面时,部分内容先显示出来,又有些内容后显示.那么浏览器加载显示html究竟是按什么顺序进行的呢 其实浏览器加载显示html的顺序是按下面的顺序进行的:1.IE下载的顺序是 ...

  8. 浏览器加载、渲染html的顺序和页面优化

    浏览器加载和渲染html的顺序 1. IE下载的顺序是从上到下,渲染(就是把请求的内容显示到浏览器屏幕上)的顺序也是从上到下,下载和渲染是同时进行的. 2. 在渲染到页面的某一部分时,其上面的所有部分 ...

  9. 浏览器加载外部js 的顺序,以及处理顺序。

    问题, 有事候按F12打开 google的调试台后,查看network下面加载过来的资源是, 有些资源的状态处于 pending.. 个人理解: 浏览器是可以同时开启多个http 请求去加载外部的资源 ...

随机推荐

  1. C语言风格的 for 循环(SHELL的循环写法 已验证20200517)

    C语言风格的 for 循环 C语言风格的 for 循环的用法如下: for((exp1; exp2; exp3))do    statementsdone 几点说明: exp1.exp2.exp3 是 ...

  2. robot framework列表

    一.列表(list) python中创建列表:a=[1,2,3],b=[],c=[a,b,c,[1,2,3]],d=[a,b,c,1,2,3] robotframework中创建列表(list):通过 ...

  3. nginx重定向rewrite

    引入rewrite vim /etc/nginx/conf.d/mobile_pc.conf server{ listen 80; server_name www.zls.com zls.com; r ...

  4. 最简单的方法是使用标准的 Linux GUI 程序之一: i-nex 收集硬件信息,并且类似于 Windows 下流行的 CPU-Z 的显示。 HardInfo 显示硬件具体信息,甚至包括一组八个的流行的性能基准程序,你可以用它们评估你的系统性能。 KInfoCenter 和 Lshw 也能够显示硬件的详细信息,并且可以从许多软件仓库中获取。

    最简单的方法是使用标准的 Linux GUI 程序之一: i-nex 收集硬件信息,并且类似于 Windows 下流行的 CPU-Z 的显示. HardInfo 显示硬件具体信息,甚至包括一组八个的流 ...

  5. 云计算OpenStack---创建实例(11)

    创建实例时,需要先创建网络及实例类型等其它配置: 一.创建虚拟网络(Self-service network) 网络概述图: 网络连接图: 1.创建self-service网络 (1)加载系统变量: ...

  6. 细谈select函数(C语言) -(转自 piaojun_pj的专栏)

    Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect.accept.recv或recvfrom这样的阻塞程序( ...

  7. Linux(CentOS 7) 安全加固之非业务端口服务关闭 postfix port 25

    目录 关闭TCP 25 端口对应的服务 1. 确认对应端口的进程 2. 查找与关闭对应服务 3. 确认结果,端口已关闭 关闭TCP 25 端口对应的服务 [0 root@Qvps /root] #ca ...

  8. 微调torchvision 0.3的目标检测模型

    微调torchvision 0.3的目标检测模型 本文将微调在 Penn-Fudan 数据库中对行人检测和分割的已预先训练的 Mask R-CNN 模型.它包含170个图像和345个行人实例,说明如何 ...

  9. MinkowskiNonlinearities非线性

    MinkowskiNonlinearities非线性 MinkowskiReLU class MinkowskiEngine.MinkowskiReLU(*args, **kwargs) __init ...

  10. 『言善信』Fiddler工具 — 5、Fiddler界面布局详解【会话列表】

    目录 1.会话列表说明 2.会话列表不同颜色的含义 3.会话列表图标说明 4.会话列表应用设置 (1)给Fiddler会话列表增加IP列 (2)添加自定义列 (3)添加完成请求时间 (4)其他操作 1 ...