利用正則表達式來判斷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文件後面的問號起不到實際作用,僅能當作後綴,如果用問號加參數的方法,可以添加版本號等信息,同時可以刷新一下浏覽器端的緩存。一個小小的細節,可以給我們帶來很大的方便。