js 判断是什么浏览器加载页面
一、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 判断是什么浏览器加载页面的更多相关文章
- 为不同分辨率单独做样式文件,在页面头部用js判断分辨率后动态加载定义好的样式文件
为不同分辨率单独做样式文件,在页面头部用js判断分辨率后动态加载定义好的样式文件.样式文件命名格式如:forms[_屏幕宽度].css,样式文件中只需重新定义文本框和下拉框的宽度即可. 在包含的头文件 ...
- JS判断访问设备(userAgent)加载不同页面 JS判断客户端操作系统类型(platform)
//平台.设备和操作系统 var system ={ win : false, mac : false, xll : false }; //检测平台 var p = navigator.platfor ...
- JS 判断滚动底部并加载更多效果。。。。。。。。。
JS 判断滚动底部并加载更多效果......... <html lang="zh-cn"> <head> <meta http-equiv=" ...
- webclient 比浏览器加载页面慢的一个问题
测试中发现webclient 比浏览器加载页面慢的一个问题:原因WebClient 支持 gzip, deflate,但是未设置 解决方案: class WebClientEx : WebClient ...
- js判断flash文件是否加载完毕
轮询判断加载进度 img的加载完成有onload方法,一直不知道该怎么判断swf文件是否加载完毕了? 在应用中使用了轮询判断加载进度值PercentLoaded是否达到100,经测试,可以达到效果. ...
- 解决手淘lib-flexible.js在移动端首次加载页面页面先放大后正常问题
例如这样 然后这样 出现这样的原因一般是 静态的,即html里有一些静态的(即非js动态添加的) 如果在页面加载完成后,页面是用js动态添加的,这个问题就不太明显, doc.addEventLis ...
- 浏览器加载显示html页面内容的顺序
我们经常看到浏览器在加载某个页面时,部分内容先显示出来,又有些内容后显示.那么浏览器加载显示html究竟是按什么顺序进行的呢 其实浏览器加载显示html的顺序是按下面的顺序进行的:1.IE下载的顺序是 ...
- 浏览器加载、渲染html的顺序和页面优化
浏览器加载和渲染html的顺序 1. IE下载的顺序是从上到下,渲染(就是把请求的内容显示到浏览器屏幕上)的顺序也是从上到下,下载和渲染是同时进行的. 2. 在渲染到页面的某一部分时,其上面的所有部分 ...
- 浏览器加载外部js 的顺序,以及处理顺序。
问题, 有事候按F12打开 google的调试台后,查看network下面加载过来的资源是, 有些资源的状态处于 pending.. 个人理解: 浏览器是可以同时开启多个http 请求去加载外部的资源 ...
随机推荐
- 折腾gcc/g++链接时.o文件及库的顺序问题
gcc/g++链接时.o文件以及库的顺序问题 1 写在前面 最近换了xubuntu12.4,把原来的项目co出来编译的时候报"undefined reference to".猜测是 ...
- 马哥Linux SysAdmin学习笔记(四)
sed:编辑器 sed:Stream EDitor,行编辑器 用法: sed [option]... 'script' inputfile... script: '地址命令' 常用选项: -n:不输出 ...
- Ubuntu编译安装TrinityCore3.3.5
系统:Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-32-generic x86_64) 1核2G Notice:内存不可过小,否则会编译失败 #安装一堆东西 4 apt- ...
- 012.Ansible高级特性
一 本地执行 如果希望在控制主机本地运行一个特定的任务,可以使用local_action语句. 假设我们需要配置的远程主机刚刚启动,如果我们直接运行playbook,可能会因为sshd服务尚未开始监听 ...
- git cherry-pick(不同分支的提交合并)
git cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作.例如,假设我们有个稳定版本的分支,叫v2.0,另外还有个开发版本的分支v3.0,我们不能直接把两个分支合并, ...
- BLDC 无刷电机FOC驱动 STM32官方培训资料
STM32 PMSM FOC SDK V3.2 培训讲座一http://v.youku.com/v_show/id_XNTM2NjgxMjU2.html?from=s1.8-1-1.2STM32 PM ...
- CentOS7 删除virbr0虚拟网卡
在CentOS 7的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个以网桥连接的私网地址的virbr0网卡,这个是因为在虚拟化中有使用到libvirtd服务生成的,如果不需要可 ...
- 测试开发:从0到1学习如何测试API网关
本文来自我的一名学员分享 日常工作中,难免会遇到临危受命的情况,虽然没有这么夸张,但是也可能会接到一个陌生的任务,也许只是对这个概念有所耳闻.也许这个时候会感到一丝的焦虑,生怕没法完成领导交给的测试任 ...
- urllib2连接超时设置
#urllib2设置超时 #获取网页的源码 def getHtml(url,i): if i > 2: return try: req = urllib2.Request(url) time.s ...
- RabbitMaClientPoll
import pika import threading import random import uuid import json # 框架模块 from django.conf import se ...