校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 檢測瀏覽器對HTML5和CSS3支持度的方法

檢測瀏覽器對HTML5和CSS3支持度的方法

熱門標簽:外呼系統電話怎么投訴 地圖標注位置能賺錢嗎 邢臺縣地圖標注app 阜陽企業外呼系統 外呼線穩定線路 南通數據外呼系統推廣 pageadm實現地圖標注 呼和浩特外呼電銷系統排名 申請400電話流程簡介

 HTML5, CSS3 以及其他相關技術例如 Canvas、WebSocket 等等將 Web 應用開發帶到了一個新的高度。該技術通過組合 HTML、CSS 和 JavaScript 可以開發出桌面應用具有的效果。盡管 HTML5 承諾很多,但現實中對 HTML5 支持的瀏覽器以及 HTML5 標準本身的完善程度都還沒有到一個很成熟的程度。現在完全不擔心瀏覽器支持是不現實的,還需要時間,因此當我們決定要采用 HTML5 技術開發 Web 應用的時候,我們需要對瀏覽器所支持的特性進行檢測。

而 Modernizr 就可以幫助你完成對瀏覽器所支持 HTML5 特性的檢查。

下面代碼檢測瀏覽器是否支持 Canvas:
 

復制代碼
代碼如下:
<script>
window.onload = function () {
if (canvasSupported()) {
alert('canvas supported');
}
};

function canvasSupported() {
var canvas = document.createElement('canvas');
return (canvas.getContext && canvas.getContext('2d'));
}
</script>

下面代碼檢測瀏覽器是否支持本地存儲:
 

復制代碼
代碼如下:

<script>
window.onload = function () {
if (localStorageSupported()) {
alert('local storage supported');
}
};

function localStorageSupported() {
try {
return ('localStorage' in window && window['localStorage'] != null);
}
catch(e) {}
return false;
}
</script>

上面的兩個例子中我們可以很直觀的對瀏覽器的特性進行檢查以確保我們在對應的瀏覽器上應用的功能能否正常運作。


而使用 Modernizr 的好處還在于你不需要這樣一項項去檢查,還有更簡單的方法,下面我們開始:

當我第一次聽到 Moderizr 這個項目時,我以為這是一個讓一些老的瀏覽器能支持 HTML5 的 JS 庫,事實上不是,它主要是檢測的功能。

Modernizr 可以通過網址 http://modernizr.com 來訪問,該網站同時還提供一個定制腳本的功能,你可以確定你需要檢測什么特性,并依此來生成相應的 JS 文件,這樣可以減少不必要的 JS 代碼。 

 一旦下載了 Modernizr 的 JS 文件后,就可以通過 <script> 標簽引入到網頁中。
 

復制代碼
代碼如下:
<script src="Scripts/Modernizr.js" type="text/javascript"></script>

檢測 HTML 元素

一旦我們在頁面上引入了 Modernizr 后就可以立即使用,我們可以在 <html> 元素中聲明不同的 CSS 類,這些類定義了所需要支持或者不支持的特性,不支持的特性其類名一般是 no-FeatureName,例如 no-flexbox。下面是一個在 chrome 上可運行的例子:

 

復制代碼
代碼如下:

<html class=" js flexbox canvas canvastext webgl no-touch geolocation postmessage
websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla
multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity
cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d
csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers
applicationcache svg inlinesvg smil svgclippaths">

還可以這樣來判斷瀏覽器是否啟用了 JavaScript 支持:
 

復制代碼
代碼如下:
<html class="no-js">

你可以在 HTML5 Boilerplate (http://html5boilerplate.com) 或者是 Initializr (http://initializr.com) 看到一些入門的例子,根據上面的步驟,增加 no-js 類可以判斷瀏覽器是否啟用了 JavaScript 支持。
 
使用 HTML5 和 CSS3 特性

你為 <html> 標簽增加的 CSS 屬性,可以直接在 CSS 中定義所需要的樣式,例如:
 

復制代碼
代碼如下:

.boxshadow #MyContainer {
border: none;
-webkit-box-shadow: #666 1px 1px 1px;
-moz-box-shadow: #666 1px 1px 1px;
}

.no-boxshadow #MyContainer {
border: 2px solid black;
}

如果瀏覽器支持 box-shadows 的話,將會為 <html> 元素增加 boxshadow 這個 CSS 類,否則的話就使用 no-boxshadow 這個類。這樣假設瀏覽器不支持 box-shadow 的話,我們可以使用其他的樣式來進行定義。


另外我們也可以使用 Modernizr 的對象來操作這個行為,例如下面的代碼用來檢測瀏覽器是否支持 Canvas 和 本地存儲:

 

復制代碼
代碼如下:

$(document).ready(function () {

if (Modernizr.canvas) {
//Add canvas code
}

if (Modernizr.localstorage) {
//Add local storage code
}

});

全局的 Modernizr 對象同樣可用于測試 CSS3 特性是否支持:
 

復制代碼
代碼如下:

$(document).ready(function () {

if (Modernizr.borderradius) {
$('#MyDiv').addClass('borderRadiusStyle');
}

if (Modernizr.csstransforms) {
$('#MyDiv').addClass('transformsStyle');
}

});


使用Modernizr加載腳本

在出現了瀏覽器不支持某些功能的的情況下,你不僅可以提供一個不錯的備用方案,還可以加載shim/polyfill腳本在適當情況下填補缺失的功能 (想了解更多關于shims/polyfills的信息,請查看 https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills). Modernizr擁有一個內置的腳本加載器,可以用來測試一個功能,并在功能無效的時候加載另一個腳本. 腳本加載器是內置在Modernizr中的,并且是有效的獨立yepnope(http://yepnopejs.com)腳本. 腳本加載器非常容易上手,它根據特定瀏覽器功能的可用性,真的會簡化加載腳本的過程.

你可以使用Modernizr的load()方法來動態加載腳本,該方法接受定義被測功能的屬性(test屬性), 如測試成功后要加載的腳本(yep屬性), 如測試失敗后要加載的腳本(nope屬性), 和無論測試成功還是失敗都要加載的腳本(both屬性). 使用load()及其屬性的示例如下:
 

復制代碼
代碼如下:

Modernizr.load({
test: Modernizr.canvas,
yep: 'html5CanvasAvailable.js’,
nope: 'excanvas.js’,
both: 'myCustomScript.js'
});


在這個例子中Modernizr在加載腳本時還會測試是否支持canvas功能 . 如果目標瀏覽器支持HTML5 canvas就會加載html5CanvasAvailable.js腳本及 myCustomScript.js腳本 (在這個例子中使用yep屬性有點牽強  – 這只是為了演示load()方法中的屬性如何使用 ). 否則的話, 就會加載 excanvas.js這個 polyfill腳本來為IE9之前版本的瀏覽器添加功能支持 . 一旦excanvas.js被加載,myCustomScript.js也會接著被加載.

由于Modernizr會處理加載腳本, 所以你可以用它來做些別的事情. 比如, 在Google或微軟提供的第三方CDN不管用的時候,你可以用Modernizr來加載本地的腳本. Modernizr文檔中提供了在CDN掛掉后提供本地jQuery后備過程的示例:
代碼會先嘗試從Google CND加載jQuery. 一旦腳本下載完成(或者下載失敗)就會調用某個方法. 這個方法會檢查jQuery對象是否有效,如果無效就加載本地的jQuery腳本. 并在其后加載一個名為needs-jQuery.js的腳本.

最后想說的是,如果你打算開發基于 HTML5 和 CSS3 的 Web 應用的話,那 Modernizr 就是你必不可少的工具,除非,除非你確認你所有客戶所使用的瀏覽器支持你所寫的代碼。

標簽:辛集 蚌埠 德州 撫順 內蒙古 鶴崗 楊凌 黃山

巨人網絡通訊聲明:本文標題《檢測瀏覽器對HTML5和CSS3支持度的方法》,本文關鍵詞  檢測,瀏覽器,對,HTML5,和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《檢測瀏覽器對HTML5和CSS3支持度的方法》相關的同類信息!
  • 本頁收集關于檢測瀏覽器對HTML5和CSS3支持度的方法的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    三级精品在线观看| 乱中年女人伦av一区二区| 日韩网站在线看片你懂的| 日韩电影免费一区| 在线一区二区三区四区五区| 在线国产亚洲欧美| 欧美久久久久久久久中文字幕| 欧美丝袜丝交足nylons| 色丁香久综合在线久综合在线观看| 91免费看`日韩一区二区| 日韩精品一二三| 亚洲成av人影院| 国产精品一区二区在线播放| 精品无人码麻豆乱码1区2区| 日韩精品久久理论片| 亚洲一卡二卡三卡四卡无卡久久| 国产日韩欧美综合在线| 亚洲国产欧美另类丝袜| 在线成人免费视频| 91精品国产91综合久久蜜臀| 免费精品99久久国产综合精品| www.视频一区| 国产亚洲欧美色| 日本vs亚洲vs韩国一区三区二区| 91黄视频在线| 国产伦精一区二区三区| zzijzzij亚洲日本少妇熟睡| 国模套图日韩精品一区二区| av电影天堂一区二区在线| 久久久精品国产99久久精品芒果 | 精品日韩成人av| 香蕉成人伊视频在线观看| 综合亚洲深深色噜噜狠狠网站| 久久精品国产77777蜜臀| 日韩午夜在线影院| 蜜桃视频第一区免费观看| 欧美一区2区视频在线观看| 亚洲国产精品嫩草影院| 欧美日韩久久一区| 日韩精品视频网站| 日韩欧美成人一区二区| 激情五月播播久久久精品| 国产亚洲短视频| 国产亚洲视频系列| 国产iv一区二区三区| √…a在线天堂一区| 91黄色免费看| www.日韩大片| ...中文天堂在线一区| 91女人视频在线观看| 色偷偷成人一区二区三区91 | 一级日本不卡的影视| 日本久久电影网| 午夜欧美2019年伦理| 8v天堂国产在线一区二区| 麻豆精品新av中文字幕| 国产日韩欧美综合一区| 色综合久久88色综合天天免费| 亚洲国产综合色| 欧美tickling网站挠脚心| 成人av网址在线| 亚洲成人av电影在线| 日韩一卡二卡三卡| 99久久国产综合精品麻豆| 午夜欧美2019年伦理| 亚洲国产精品av| 日本va欧美va欧美va精品| 日韩欧美在线一区二区三区| 久久精品国产精品青草| 中文字幕一区二区三区av| 欧美精品日日鲁夜夜添| 国产91丝袜在线播放0| 亚洲成人在线观看视频| 久久久久久久国产精品影院| 色婷婷国产精品综合在线观看| 美女国产一区二区三区| 亚洲欧洲精品一区二区精品久久久 | 国产福利精品导航| 亚洲123区在线观看| 国产欧美日产一区| 777午夜精品视频在线播放| 成人小视频免费在线观看| 日日夜夜精品视频天天综合网| 国产精品综合久久| 亚洲成av人片在线观看| 国产精品久久久久久户外露出| 欧美一区二区三区不卡| 91色视频在线| 国产裸体歌舞团一区二区| 丝袜美腿一区二区三区| 国产精品久久久久aaaa樱花| 日韩视频在线观看一区二区| 99re热这里只有精品视频| 国产一区在线不卡| 日本不卡一区二区三区高清视频| 亚洲视频综合在线| 日本一区二区久久| 欧美一二三四区在线| 欧美美女一区二区| 在线免费观看视频一区| 97久久超碰精品国产| 成人午夜av电影| 国产一区啦啦啦在线观看| 久久精品国产**网站演员| 日韩av在线发布| 午夜精品福利视频网站| 亚洲综合成人在线视频| 一区二区三区不卡在线观看| 综合精品久久久| 亚洲人成精品久久久久| 国产精品电影一区二区| 中文av一区二区| 亚洲欧美中日韩| 亚洲啪啪综合av一区二区三区| 国产精品久久久99| 综合分类小说区另类春色亚洲小说欧美 | 亚洲欧洲av另类| 亚洲欧美综合色| 亚洲女厕所小便bbb| 樱桃国产成人精品视频| 亚洲精品成人a在线观看| 一区二区三区波多野结衣在线观看| 中文字幕av一区二区三区高 | 亚洲大型综合色站| 亚洲一区自拍偷拍| 日本网站在线观看一区二区三区| 亚洲综合色网站| 日韩avvvv在线播放| 久久狠狠亚洲综合| 国产suv精品一区二区6| 一本色道a无线码一区v| 色综合一个色综合亚洲| 在线观看免费成人| 欧美一二区视频| 日韩欧美在线综合网| 国产日韩欧美a| 中国av一区二区三区| 欧美影院一区二区| 色中色一区二区| 91浏览器在线视频| 91精品黄色片免费大全| 欧美一区二区三区免费在线看| 久久综合色综合88| 亚洲同性同志一二三专区| 亚洲最新在线观看| 久久er精品视频| 不卡av免费在线观看| 91麻豆.com| 亚洲视频每日更新| 欧美猛男超大videosgay| 国产一区在线视频| 久久精品久久综合| 成人综合婷婷国产精品久久| 一本久久综合亚洲鲁鲁五月天| 欧美一区二区三区爱爱| 国产精品视频一二三区| 午夜精品一区二区三区电影天堂| 国产一区亚洲一区| 欧美精品xxxxbbbb| 国产精品视频九色porn| 五月综合激情婷婷六月色窝| 国产成人午夜99999| 欧美精品在线观看播放| 国产欧美一区二区精品性| 亚洲高清一区二区三区| 国产一区二区视频在线播放| 在线看一区二区| 欧美变态口味重另类| 艳妇臀荡乳欲伦亚洲一区| 国产91色综合久久免费分享| 欧美精品一级二级| 日韩美女视频19| 国产一区在线观看麻豆| 欧美高清视频不卡网| 亚洲美女在线一区| 成人精品一区二区三区中文字幕| 欧美一区欧美二区| 亚洲永久精品国产| 91老司机福利 在线| 国产精品久久久久久久久图文区 | 国产精品一区免费在线观看| 91精品国产aⅴ一区二区| 亚洲一区二区三区视频在线播放| 成人激情图片网| 日本一区二区三区四区| 精品国产乱码久久久久久免费| 亚洲mv在线观看| 色综合天天综合网国产成人综合天| 久久久精品综合| 亚洲男人的天堂在线观看| 日韩一区欧美二区| 欧美女孩性生活视频| 无码av免费一区二区三区试看 | 国产精品一二三四| 欧美老肥妇做.爰bbww视频| 亚洲激情图片一区| 91免费观看在线| 中文字幕制服丝袜一区二区三区| 高清成人免费视频| 中文字幕中文字幕在线一区|