DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> HTML基礎知識 >> HTML5詳解 >> HTML5基本代碼
HTML5基本代碼
編輯:HTML5詳解     

/******************************************************

* @Web Storage

******************************************************/

//一直有效,關閉窗口和重啟浏覽器後數據依然存在

window.localStorage["key"] = value;

   //當前裝口有效,關閉窗口和重啟浏覽器後數據消失

window.sessionStorage["key"] = value;

//不能存放函數,如果是函數會被轉換成字符串

//每個域的數據是不能共享的

/******************************************************

* @Web SQL Database

******************************************************/

//1.打開數據庫

db = openDatabase("DBTest", "1.0", "Html5 Database API example", 200000);  

//2.判斷是否打開成功

if (!db) {

alert("數據庫打開失敗");

} else {

//3.執行sql查詢

db.transaction(function(tx){

tx.executeSql("SELECT * FROM Table1Test", [], function(tx, result){

console.log(r = result);

for (var i = 0, item = null; i < result.rows.length; i++) {

//提取結果中第i行數據對象,存入item變量,通過item["id"]這種方式獲得該行id字段的值

item = result.rows.item(i);

031                 console.log(item);

032             }

033         });

034     });

036     //4.插入一條記錄

037     db.transaction(function(tx){

038         tx.executeSql("INSERT INTO Table1Test (id, text) VALUES (?, ?)", [num, document.querySelector('#todoitem').value], function(tx, result){

039         }, onError);

040     });

041 }

042 //查詢函數,data為替代sql語句中?的變量的數組

043 tx.executeSql("sql", data, successCallback, errorCallback)

044 //例如

045 tx.executeSql("INSERT INTO Table1Test (id, text) VALUES (?, ?)", [10,"text"], successCallback, errorCallback)

047 /******************************************************

048 * @Web Workers

049 ******************************************************/

050 //main.JS:父進程腳本

051 var worker = new Worker('extra_work.JS');

052 worker.onmessage = function(event){

053     alert(event.data);

054 };

056 //extra_work.JS: 被調用的腳本,子進程

058 // 這裡進行你所需要的計算

059 postMessage(some_data);//當需要通知父進程時調用,參數傳入到父進程的onmessage方法中

061 /******************************************************

062 * @Web Sockets

063 ******************************************************/

064 //連接sockets服務器

065 var socket = new WebSocket("ws://bloga.jp:80/mychat1");

067 socket.readyState; //連接狀態 0:連接中 1:連接成功 2:連接關閉

068 //當連接成功時

069 socket.onopen = function(event){

070     console.log("connected!");

071 }

072 //當從服務器接收到信息時

073 socket.onmessage = function(event){

074     console.log(event.data);

075 }

076 //當連接關閉時

077 socket.onclose = function(event){

078     console.log("closed");

079 }

081 /******************************************************

082 * @Notifications

083 ******************************************************/

085 window.webkitNotifications.checkPermission();//檢查是否允許桌面提示 0:允許 1:禁止。桌面提示的允許狀態是按域保存的

086 window.webkitNotifications.requestPermission();//請求用戶允許桌面提示

088 tip = window.webkitNotifications.createNotification("src/dwd1.png", "提示框的標題", "提示框的內容!!!")

089 tip.show(); //彈出提示框

090 tip.close(); //關閉提示框

092 /******************************************************

093 * @Geolocation

094 ******************************************************/

095 navigator.geolocation.getCurrentPosition(function(position){

097     position.coords //位置坐標

098     position.coords.longitude //經度

099     position.coords.latitude //緯度

100     position.coords.accuracy //精度

101     position.coords.altitudeAccuracy //高度的精度

102     position.coords.heading //朝向

103     position.coords.speed //速度

104     position.timestamp //獲取坐標的時間戳

105 });

107 /******************************************************

108 * @Audio + Video

109 ******************************************************/

110 //獲得video對象,audio對象也可以通過此方法,需要在Html中放置video或audio標簽

111 Media = document.getElementById("vvv");

113 //audio對象可以通過這個方法快速創建,video不可以。

114 Media = new Audio("http://directguo.com/Html5/src/france.ogg")

116 //方法和屬性。video和audio方法和屬性基本相同

117 Media.src = value; //返回或設置當前資源的URL

118 Media.currentTime = value; //當前播放的位置,賦值可改變位置

119 Media.startTime; //一般為0,如果為流媒體或者不從0開始的資源,則不為0

120 Media.duration; //當前資源長度 流返回無限

121 Media.paused; //是否暫停

122 Media.ended; //是否結束

123 Media.autoPlay = value; //是否自動播放 true/false

124 Media.loop = value; //是否循環播放 true/false

125 Media.play(); //播放

126 Media.pause(); //暫停

127 Media.controls = value; //是否有默認控制條 true/false

128 Media.volume = value; //音量

129 Media.muted = value; //靜音 true/false

130 //TimeRanges(區域)對象 :該對象描述的是一個或多個區域,例如已經加載的區域為兩個部分:1-5.8秒 6-10秒

131 TimeRanges.length; //區域段數,例如上述例子,應該返回2

132 TimeRanges.start(i) //第i段區域的開始位置,單位秒

133 TimeRanges.end(i) //第i段區域的結束位置,單位秒

135 //事件

136 eventTester = function(e){//著裡定義了一個簡單的事件檢測函數來檢測如下的事件

137     Media.addEventListener(e, function(){

138         console.log((new Date()).getTime(), e);

139     });

140 }

142 eventTester("abort"); //客戶端主動終止下載(不是因為錯誤引起),

143 eventTester("error"); //請求數據時遇到錯誤

144 eventTester("play"); //play()和autoplay開始播放時觸發

145 eventTester("pause"); //pause()觸發

146 eventTester("playing"); //開始回放

147 eventTester("timeupdate"); //播放時間改變

148 eventTester("ended"); //播放結束

149 eventTester("ratechange"); //播放速率改變

150 eventTester("volumechange"); //音量改變

152 //詳細API請看:http://directguo.com/blog/index.PHP/2010/07/Html5-audio-video-tag/

154 /******************************************************

155 * @Canvas2D

156 ******************************************************/

157 var elem = document.getElementById('myCanvas');

158 var ctx = elem.getContext('2d');

160 //畫矩形

161 ctx.fillRect(x,y,width,height); //畫一個填充的矩形

162 ctx.strokeRect(x,y,width,height); //為一個矩形描邊

163 ctx.clearRect(x,y,width,height); //清楚一個矩形的一部分並且設為透明

164 ctx.rect(x, y, width, height); //畫矩形

166 //畫路徑

167 ctx.beginPath();//創建路徑的第一步是調用beginPath方法,返回一個存儲路徑的信息

168 ctx.closePath();//從當前的點到起始點閉合路徑

169 ctx.stroke();//描邊路徑

170 ctx.fill();//填充路徑

171 ctx.lineTo(x, y);//從上一個起點到(x,y)的點畫線,上一個起點可以通過moveTo來指定,默認為原先路徑的終點

173 //畫圓弧

174 arc(x, y, r, sa, ea, cw);//x,y圓心坐標,r-半徑, sa和ea是圓弧的開始和結束弧度cw為true是逆時針,false為順時針

176 //畫貝塞爾曲線

177 quadraticCurveTo(cp1x, cp1y, x, y);//二次貝塞爾曲線

179 //使用圖像

180 drawImage(image, x, y); //image-圖像對象

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved