<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <!-- 個人HTML5代碼 --> </body> </html>
HTML5支持Chrome、Firefox和IE9及以上的瀏覽器。
若是須要考慮IE8及如下的瀏覽器,能夠加入html5shiv.js
的引用。方法以下:javascript
<!--[if lt IE 9]> <script type="text/javascript" src="http://www.ijquery.cn/js/html5shiv.js"></script> <![endif]-->
document.getElementById("username").oninput = function() { // 每當用戶在表單中輸入一個字符,就會觸發一次這個事件 }
document.getElementById("email").oninvalid = function() { this.setCustomValidity("您輸入的郵箱不正確!"); }
<datalist>標籤:能夠輸入數據的下拉菜單,須要結合input>text使用,代碼以下:html
<!-- text表單右側有一個下拉箭頭,能夠直接下拉;輸入時能夠模糊匹配 --> <input type="text" list="cars" /> <datalist id="cars"> <option>寶馬</option> <option>寶駿</option> <option>寶寶</option> </datalist>
<fieldset>標籤:表單框,盛放多個表單的容器,代碼以下:html5
<form action=""> <fieldset> <legend>用戶驗證表單</legend> <!-- 標題 --> <!-- 這裏寫其餘標籤代碼 --> </fieldset> </form>
<label>標籤:點擊該標籤中的文本,能夠觸發該標籤中的表單的焦點,代碼以下:java
<label> 姓名:<input type="text"/> </label>
<keygen>標籤:加密標籤,保證數據傳輸安全,能夠選擇不一樣強度的加密,代碼以下:jquery
<!-- 能夠選擇中等強度加密(1024)和高強度加密(2048) --> 加密:<keygen/>
<meter>標籤:度量器,相似溫度計,根據在不一樣的值區間顯示不一樣的顏色,代碼以下:git
<!-- 當在low和high之間時顯示綠色,不然顯示黃色 --> <meter max="100" min="0" low="30" high="70" value="50"></meter>
<progress>標籤:進度條,代碼以下:web
<progress max="100" min="0" value="40"></progress>
<audio>標籤:音頻播放標籤,H5播放音頻不依賴於任何插件,代碼以下:數組
<!-- controls:顯示控制條;autoplay:自動播放;loop:自動循環播放 --> <audio controls autoplay loop> <source src="music/fireworks.ogg" /> <source src="music/fireworks.mp3" /> <source src="music/fireworks.wav" /> 抱歉,當前瀏覽器不支持播放此音頻! </audio> <!-- 注:audio標籤目前只支持.ogg、.mp三、.wav三種音頻格式 --> <!-- 不一樣瀏覽器支持的音頻格式不一樣,所以須要在服務端保存三種格式的音頻文件 -->
<video>標籤:視頻播放標籤,H5播放音頻不依賴與任何插件,代碼以下:瀏覽器
<video controls autoplay loop> <source src="music/movie.ogg" /> <source src="music/movie.mp4" /> <source src="music/movie.webm" /> 抱歉,當前瀏覽器不支持播放此視頻! </video> <!-- 注:video標籤目前只支持.ogg、.mp四、.webm三種音頻格式 -->
<figure>標籤:多媒體標籤(圖片、音頻、視頻等),代碼以下:緩存
<figure> <figcaption>多媒體標題</figcaption> <!-- 這裏能夠寫多媒體代碼或其餘代碼 --> </figure>
獲取文檔元素:H5新增了對元素的統一獲取方法,代碼以下:
var box01 = document.querySelector(".box1"); // 只會選擇符合條件的第一個元素 var boxes = document.querySelectorAll("div"); // 獲取全部符合條件的元素的數組
類名操做:H5新增了對元素類的添加、刪除、切換、查找操做,代碼以下:
document.querySelector("box").classList.add("box1"); // 添加 document.querySelector("box").classList.remove("box1"); // 刪除 var flag = document.querySelector("box").classList.contains("box1"); // 查詢 document.querySelector("box").classList.toggle("box1"); // 切換
自定義屬性:H5支持自定義屬性,但屬性名必須以「data-」開頭,代碼以下:
<div id="mydiv" data-name="myname" data-my-content="mycontent"></div> <script> console.log(document.querySelector("#mydiv").dataset["name"]); console.log(document.querySelector("#mydiv").dataset["myContent"]); </script>
draggable
屬性爲true
當拖拽元素懸浮在目標元素上方時,能夠設置鼠標樣式,代碼以下:
target.ondragover = function(event) { event.preventDefault(); };
HTML5容許用戶自定義網頁上的任意元素全屏顯示,代碼以下:
// 請求全屏代碼: if (elem.requestFullscreen) { // 能夠默認請求全屏,screen小寫 elem.requestFullscreen(); } else if (elem.mozRequestFullScreen) { // 能夠火狐請求全屏,Screen大寫 elem.mozRequestFullScreen(); } else if (elem.webkitRequestFullScreen) { // 能夠webkit請求全屏,Screen大寫 elem.webkitRequestFullScreen(); } // 取消全屏代碼: if (elem.cancelFullscreen) { elem.cancelFullscreen(); } else if (elem.mozCancelFullScreen) { elem.mozCancelFullScreen(); } else if (elem.webkitCancelFullScreen) { elem.webkitCancelFullScreen(); }
document.cookie
存儲。
Storage存儲
,這種方式存儲,可能存儲在瀏覽器內存裏面(window.sessionStorage),也有可能存儲在計算機硬盤裏面(window.localStorage)。使用這種方式存儲數據的特性有:
使用方法(方法相同,這裏以sessionStorage爲例):
window.sessionStorage.setItem("username", "zhangsan"); // 存儲數據 var value = window.sessionStorage.getItem("username"); // 獲取數據 window.sessionStorage.setItem("username", "lisi"); // 修改數據 window.sessionStorage.removeItem("username"); // 刪除數據 window.sessionStorage.clear(); // 清空數據
查看存儲位置方法:瀏覽器->F12打開開發者工具->Resource->local/session storage
// 當用戶網絡鏈接後回調的事件: window.addEventListener("online", function() { alert("網絡已鏈接!"); }); // 當用戶斷開網絡鏈接後回調的事件: window.addEventListener("offline", function() { alert("網絡已斷開!"); });
cache manifest
(緩存清單)文件.appcache
爲後綴名,如my.appcache
在HTML頁面中添加以下代碼:
<html manifest="my.appcache">
appcache文件結構以下所示:
CACHE MANIFEST # .appcache文件以「#」開啓註釋 # 能夠緩存網絡文件,也能夠緩存本地文件,本地文件用相對路徑 CACHE: # 指定須要緩存的靜態資源: http://...........jpg NETWORK: # 指定要在線能訪問的資源: http://...........jpg FALLBACK: # 當頁面沒法訪問時,跳轉到的頁面: 404.html
簡單代碼以下:
if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(onSuccess, onError); } else { alert("你的瀏覽器不支持地理定位!"); } function onSuccess (position) { var latitude = position.coords.latitude; // 獲取維度 var langitude = position.coords.longitude; // 獲取經度 } function onError (error) { alert(error); }