js、css、html判断浏览器的各种版本

当前位置 : 首页 > 网页制作 > 心得技巧 > js、css、html判断浏览器的各种版本

js、css、html判断浏览器的各种版本

来源:互联网 作者:脚本宝典 时间:2015-09-09 18:42
利用正则表达式来判断ie浏览器版本 判断是否IE浏览器 if (document.all) { alert(这个是ie浏览器);} 判断是否IE6浏览器 方法一:if ( /MSIE 6.0/ig.test(navigator.appVersion) ) {alert(这个是ie6浏览器);} 或

利用正则表达式来判断ie浏览器版本 

判断是否IE浏览器 

if (document.all) { alert("这个是ie浏览器");} 

判断是否IE6浏览器 

方法一:if ( /MSIE 6.0/ig.test(navigator.appVersion) ) {alert("这个是ie6浏览器");} 
或 /MSIE 8/.test(navigator.appVersion) 

方法二: 

var IE = !+'\v1'; 

IE6 = IE && ([/MSIE(\d)\.0/i.exec(navigator.userAgent)][0][1] == 6) 

判断是否IE7浏览器 

if ( /MSIE 7.0/ig.test(navigator.appVersion) ) {alert("这个是ie7浏览器“);} 

根据以上判断IE浏览器,同理判断其它IE浏览器以此类推。 

通过浏览器版本信息判断各浏览器 

var _uat=navigator.userAgent; 
if(_uat.indexOf("MSIE 6.0")>0) alert("ie6"); 
else if(_uat.indexOf("MSIE 7.0")>0) alert("ie7"); 
else if(_uat.indexOf("MSIE 8.0")>0) alert("ie8"); 
else if(_uat.indexOf("Firefox")>0) alert("firefox"); 

CSS判断浏览器 
#example{color:red ;} /*firefox*/ 
* html #example{color:blue;} /*ie6*/ 
*+html #example{color:green;} /*ie7*/ 

HTML判断浏览器 
1. <!--[if !IE]><!-->除IE外都可识别<!--<![endif]--> 
2. <!--[if IE]> 所有的IE可识别<![endif]--> 
3. <!--[if IE 6]> 仅IE6可识别<![endif]--> 
4.<!--[if lt IE 6]> IE6以及IE6以下版本可识别<![endif]--> 
5. <!--[if gte IE 6]> IE6以及IE6以上版本可识别<![endif]--> 
6.<!--[if IE 7]> 仅IE7可识别<![endif]--> 
7. <!--[if lt IE 7]> IE7以及IE7以下版本可识别<![endif]--> 
8. <!--[if gte IE 7]> IE7以及IE7以上版本可识别<![endif]--> 

HTML中css和js链接中的版本号 

背景 

在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css、js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就可以从浏览器的缓存中获取css、js等,而不必从你的服务器读取,这样在一定程度上加快了网站的打开速度,又可以节约一下你的服务器流量。 

问题 

现在问题来了,.htaccess设置的css、js缓存都有一个过期时间,如果在访客的浏览器中已经缓存了css、js,在这些css、js缓存未过期之前,浏览器只会从缓存中读取css和js,如果你在服务器上修改了css和js,那么这些更改在回头客的浏览器中是不会有变化的,除非回头客按了Ctrl + F5刷新了你的网站页面或者手动清空了浏览器的缓存。一个网站的访客成千上万,回头客也会有不少,你不可能在更新css后让每个访客都刷新一下缓存吧,那么这个问题你会怎么处理呢? 

处理办法 

1.更改css文件名:其实解决这个问题很简单,缓存是通过文件名标记缓存的内容的。在你更新了网站的css文件内容后,在更换一下css的文件名就可以了。如原先html中的css调用语句如下: 

<link rel="stylesheet" href=“http://www.example.com/style.css” type="text/css" media="screen" /> 

改一下css文件名就可以了: 

<link rel=“stylesheet” href="http://www.example.com/index.css" type="text/css" media="screen" /> 

另外一种从更改css文件名的方法是将版本号写到文件名中,如: 

<link rel="stylesheet" href="http://www.example.com/index.v2011.css" type="text/css" media="screen"/>

css文件更新后,改一下文件名中的版本号即可: 

<link rel="stylesheet" href="http://www.example.com/index.v2012.css" type="text/css" media="screen"/>

2.给css文件加个版本号:其实每次修改css文件后还要修改css的文件名有点麻烦,那么我们可以在加载css语句中加入个版本号(即css链接中?后面的内容)就可以了。如原先html中的css调用语句如下: 

<link rel="stylesheet" href=“http://www.example.com/style.css?v=2011”type="text/css" media="screen"/> 

改一下css文件的版本号改成2012就可以了: 

<link rel="stylesheet" href=“http://www.example.com/style.css?v=2012”type="text/css" media="screen"/> 

总结 

其实css文件后面的问号起不到实际作用,仅能当作后缀,如果用问号加参数的方法,可以添加版本号等信息,同时可以刷新一下浏览器端的缓存。一个小小的细节,可以给我们带来很大的方便。 

Tag:
网友评论

<