利用navigator对象在浏览器中检查插件,实现的代码如下. // IE4+.firefox.chrome.safari.opera中,利用navigator检测插件 ,name为插件的名字 function hasPlugin(name) { name = name.toLowerCase(); for(var i = 0; i < navigator.plugins.length; i++) { if (navigator.plugins[i].name.toLowerCase().ind…
function getTerminalType() { //获取navigator对象 var o = navigator.userAgent, t = ""; if (/\biPhone\b|\biPad\b/.test(o) && !/android/i.test(o)) { t = "ios"; } else if (/android/i.test(o)) { t = "android"; } else if (/wind…
一些概念: 重载(overload): 什么是: 相同函数名,不同参数列表的多个函数,在调用时,可根据传入参数的不同,自动选择对应的函数调用! 为什么: 减轻调用者的负担,一个函数名,可执行多种操作 何时: 一项任务,根据不同的参数,执行不同的操作流程时 如何: js语法不支持重载效果 变通: 所有函数对象内,都自动内建了一个 其功能实现情况如下: function pay(){ console.log("微信支付") ; } function pay(num){ console.lo…
  又到了上图时间了..对照这张图,各个时间所对应的意义就很简单明了.   阻挡(Blocking):每个浏览器有并发连接数量的上限(例如Firefox对每个host限制6个连接),如果当前建立的连接数已经超过上限,那么其余该请求会被阻塞,等待新的可以用的连接. 域名解析(DNS Lookup):这个不用解释了吧,就是从DNS请求发出去到收到回复的时间.即上图中DNS的那一段. 建立连接(Connecting):三次握手建立TCP链接的时间.如果是HTTPS的话,还有SSL链接的时间.对应图中T…
在javascript中对象通常包括两种类型:内置对象和浏览器对象,此外,用户还可以自定义对象. 对象包含两个要素:1.用来描述对象特性的一组数据,也就是若干变量,通常称为属性.2.用来操作对象特性的若干动作,也就是若干函数,通常称为方法. 浏览器对象 对象 含义 anchor 当前文档中设置了name属性的超链接 applet 当前文档中的小程序 area 客户端图形映射中的区域 button 表单中的按钮 checkbook 表单中的复选框 document 当前窗口中的HTML文档 emb…
navigator -- navigator对象通常用于检测浏览器与操作系统的版本 navigator,中文"导航器" 引用网址:http://www.dreamdu.com/javascript/window.navigator/ navigator对象是window对象的属性 由于navigator没有统一的标准,因此各个浏览器都有自己不同的navigator版本,这里只介绍最普遍支持且最常用的 常用的navigator属性 appCodeName -- 浏览器代码名的字符串表示…
placeholder是一个很有用的属性,可以提示用户在input框中输入正确的内容,但是IE8以及IE8一下的浏览器不支持该属性,我们可以使用js来模拟相似的效果.下面直接上代码: <!doctype html> <html> <header> <meta charset="utf-8"> <title>placeholder</title> <style type="text/css"…
1.浏览器及版本号不同的浏览器支持的功能.属性和方法各有不同.比如IE 和Firefox 显示的页面可能就会有所略微不同. alert('浏览器名称:' + navigator.appName); alert('浏览器版本:' + navigator.appVersion); alert('浏览器用户代理字符串:' + navigator.userAgent); alert('浏览器所在的系统:' + navigator.platform); 2.浏览器嗅探器浏览器嗅探器是一段程序,有了它,浏览…
1.检测非IE浏览器 可以使用plugins数组来达到这个目的,例: //检测插件(在IE中无效) function hasPlugin(name){ name = name.toLowerCase(); for(var i=0;i<navigator.plugins.length;i++) { if(navigator.plugins[i].name.toLowerCase().indexOf(name)>-1) { return true; } } return false; } //检测…
一.使用客户端检测的原因 由于每个浏览器都具有自己独到的扩展,所以在开发阶段来判断浏览器是一个非常重要的步骤. 虽然浏览器开发商在公共接口方面投入了很多精力,努力的去支持最常用的公共功能: 但在现实中,浏览器之间的差异,以及不同浏览器的“怪癖”却是非常多的,因此客户端检测除了是一种补救措施,更是一种行之有效的开发策略. 二.navigator 对象概述 navigator 对象最早由 Netscape Navigator2.0 引入的 navigator 对象,现在已经成为识别客户端浏览器的事实…