十四.jQuery解析之浏览器嗅探
Chrome和Safrai使用的是webkit作为内核引擎,因此如果
jQuery.browser.webkit为true,则表示浏览器是chrome或safari;
如果jQuery.browser.mozilla为true,则表示浏览器是MozillaFirefox(火狐);
jQuery.browser通过解析navigator.userAgent来获取浏览器类型和版本号,这种技术也称为浏览器的嗅探技术.
navigator是全局对象window的属性,指向一个Navigator对象,包含了正在使用的浏览器的信息;
navigator.userAgent包含了浏览器用于Http,请求的用户代理(user-agent)的值.
避免编写基于特定类型或版本号的代码,因为这会导致代码与特定的浏览器类型或版本紧密联系在一起,另外,浏览器的navigatoe.userAgent是可以修改的;
解决浏览器最好的方法时基于浏览器功能测试代码.
对于navigator.userAgent的解析由方法jQuery.uaMatch(ua)实现.
这段代码是用于解析用户代理navigator.userAgent的4个正则表达式;
每个正则包含两个分组:浏览器类型特征字符和浏览器版本特征字符.
给userAgent赋值.
858~868行:定义方法jQuery.uaMatch(ua),用于解析当前浏览器的类型和版本号.在这个方法中,依次尝试用4个正则表达式匹配用户代理navigator.userAgent,并返回以下格式的结果的值.
{
browser:"",
version:""
}
899~903行:调用jQuery.uaMatch(ua)解析用户代理nabigator.userAbent.别把解析结果重新封装为jQuery.browser.
相关文章
- Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)
- jquery $.proxy使用 Jquery实现ready()的源码
- 【Jquery】jQuery获取URL參数的两种方法
- vue框架(三)_vue引入jquery、bootstrap
- JS(JQuery)中取出当日期第N天的日期或年月日。
- 猴子也能学会的jQuery第十二期——jQuery遍历(上)
- 前端基础 -JQuery之 内容过滤选择器
- eclipse安装spket插件提示js和jQuery代码
- 总结ASP.NET MVC视图页使用jQuery传递异步数据的几种方式
- Web前端JQuery面试题(三)
- jQuery 获取当前节点的html包含当前节点的方法
- jQuery中的$(window).load()与$(document).ready()以及jquery $(document).ready() 与window.onload的区别
- jQuery可拖拽排序列表jquery-sortable-lists
- PHP+jQuery 注册模块开发
- jQuery+CSS 简单代码实现遮罩层( 兼容主流浏览器 )
- 《jQuery Mobile入门经典》—— 1.6 测验
- 《jQuery Mobile入门经典》—— 导读
- Jquery获取html参数, jquery.params.js 获取参数
- jquery中Live方法不可用,Jquery中Live方法失效
- jQuery select三级联动
- WebForms UnobtrusiveValidationMode 须要“jquery”ScriptResourceMapping。