亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > HTML > 正文

html5新特性與用法大全

2024-08-26 00:21:00
字體:
來源:轉載
供稿:網友

有好多小伙伴私聊我問我html5新特性 和用法,下面我給大家具體介紹一下html5都新加了哪些新特性,下面我給大家總結一下。

1)新的語義標簽 footer header 等等 2)增強型表單 表單2.0 3)音頻和視頻 4)canvas 繪圖 5) SVG繪圖 6)地理定位 7) 拖放API 8)web worker 用來執行耗時任務 9)web Storage 在瀏覽器端存儲大量數據 10)web Socket   一種持續性的連接(非http協議)

(一)新型的語義標簽就不說了,

例如<footer></footer>

(二)增強型表單 表單2.0

一、

     1)新的input type    h4和h5對比!  

                H4中input type :text /password /radio /checkbox/ sybmit/ reset / file /hidden / image/  

                 H5中的input type :email/url/number/tel/search /range /color/month/week /date

     2)新的表單元素

                H4中表單元素 :input/textarea/select,option/label  

                 H5中新增的表單元素:datalist /progress/meter/output

二、h5中 新增的表單元素 -- datalist 建議列表

<datalist id="lunchList">    <option>京醬肉絲</option>    <option>鍋包肉</option>    <option>魚香肉絲</option>    <option>青椒肉絲</option>    <option>地三鮮</option></datalist>

請輸入您需要的午餐:<input type="text" name="lunch" list="lunchList"/>

四、h5中 新增的表單元素 -- progress 進度條

    有兩種形式:  

                bootstrap里面有progress插件樣式

<form>    網絡連接中<progress></progress>    <br/>    <!-- 0-1之間 -->    下載進度 <progress id="p3" value="0"></progress>    <input type="number" value="1"></form><script type="text/javascript">    /*settimeout和setInterval區別在于settimeout執行一次,setInterval每隔一段時間執行一次*/    var t=setInterval(function(){       var v = p3.value;       v += 0.1;       p3.value = v;       if(v>=1){        clearInterval(t);        alert("下載完成");         }    },500); </script> 

 五、h5中 新增的表單元素 -- meter

<body>    機油含量:<meter id="m1" min="0" max="100" low="30" high="70" optimum="40" value="50"></meter>    PM值:<meter id="m2" min="0" max="500" low="100" high="300" optimum="150" value="750"></meter></body> 

meter:度量衡/刻度尺/,用于標示一個所處的范圍:不可接受(紅色)/可以接受(黃色)/非常優秀(綠色)

    <meter min="可取的最小值" max="可取的最大值" low="合理的下限值" high="合理的上限值" optimum="最佳值" value="當前值" ></meter>

 3) 表單元素的新屬性

    一、H4中表單元素的屬性:<input>  

                id/class/title/type/value/name/style/readonly/disabled/checked/                 

H5中表單元素的新屬性    

1)placeholder:占位字符 作為提示不可提交                

<input value=“tom” placeholder=“請輸入用戶名”/>     

2)autofocus:自動獲取輸入焦點 (不用點一下就可以輸入只第一個input設置的才有效)                 

 <input autofocus>     

3) multiple : 允許輸入框中出現多個輸入值用逗號分隔 a@dn.com,b@dn.com                 

 <input type="email" name="emails" multiple>     

4)form :用于把輸入域放置到FORM外部                

<form id="f5"></from>                 

<input form="f5">  

=================輸入驗證相關的新屬性==================================     

例子查看input驗證相關的屬性/yz.html                 

5)required :必填項,內容不能為空               

  6)maxlength:指定字符串的最大長度                

7)minlength:指定字符串的最小長度              

   8)max:指定數字的最大值               

  9)min:指定數字的最小值               

  10)pattern:指定輸入必須符合的正則表達式  

上述驗證屬性會影響表單元素對應的js對象的validity屬性,validity屬性是驗證的屬性。

(三) video 視頻和音頻

    1.flash被H5取代體現在哪些方面?                

flash 繪圖(AS/FLEX) =>Canvas/SVG                 

flash 動畫 => 定時器+Canvas                 

視頻和音頻播放 => VIDEO/AUDIO                 

flash 客戶端存儲 => WebStorage     

2.H5新特性 ——視頻播放器 (是個行內塊元素。可以給寬高)                

H5提供了一個新的標簽用于播放視頻:

<video src=""></video> <video src=""> <source src="res/birds.mp4"></source> <source src="res/birds.ogg"></source> <source src="res/birds.webm"></source>

您的瀏覽器不支持VIDEO播放!

</video> 它本身是一個300*150的行內塊元素  備注:寫多行source是為了兼容各個瀏覽器。因為瀏覽器對視頻格式支持不統一,有些瀏覽器例如有些瀏覽器支持mp4格式,那么它就播放第一個mp4格式的視頻,如果它不支持就檢查是不是支持下面的ogg視頻,如果支持就播放,不支持的話繼續向下,下面沒有source了,那么就顯示“您的瀏覽器不支持VIDEO播放!”。

VIDEO標簽/對象常用的成員:  

成員屬性:

<video id="v2" src="" autoplay controls loop muted poster="2.jpg" preload="auto"></video>  

autoplay:false, 是否自動播放 默認false  controls:false,是否顯示播放控件,默認為false  loop:false ,是否循環播放,默認為false  muted:false,是否靜音播放,默認為false  poster:'',在播放第一幀之前顯示的海報,可以是圖片。默認為空沒有 preload:視頻預加載策略,可取值: auto:預加載視頻的元數據以及緩沖一定時長,絕對不可以在手機端使用  (尺寸/時長。第一幀內容,緩沖時長)(預加載浪費流量) metadata:僅預加載視頻的元數據(尺寸/時長,第一幀內容,)沒有緩沖時長,適合手機 none:不預加載任何數據

----------------------------------------------------------------- id v2的屬性 用法例如:

v2.playbackRate=3;  

currentTime:當前播放的時長 duration:總時長 paused:true,當前視頻是否處于暫停狀態 true是暫停,false是播放 volume:1 默認值是1,當前音量 playbackRate:1 ,回放速率 大于1表快放,小于1表慢放

id v2的方法:

play():播放視頻 pause ():暫停播放  成員事件: onplay:當視頻開始播放時觸發的事件 onpause:當視頻暫停時觸發的事件  練習:不使用video自帶的controls,自定義播放/暫停按鈕  鼠標移出視頻區域隱藏按鈕;鼠標移入顯示按鈕 例如:視頻音頻、canvas/video.html 當暫停就顯示廣告,播放就隱藏廣告

3、H5新特性 ——音頻播放器

<audio src=""></audio><audio src=""><source src="res/birds.mp3"></source><source src="res/birds.ogg"></source><source src="res/birds.wav"></source> 

 屬性方法和視頻一樣,只不過沒有海報屬性 ***判斷復選框是否√選  

cb.onchange=function(){ this.checked true為選上,false為沒選}

(四)、canvas

每個畫布上有且只有一個“畫筆”對象 ———稱為“繪圖上下文”對象——使用該對象進行繪圖!  

var ctx = canvas.getContext('2d') //現在只有2d的 得到畫布上的畫布對象

canvas繪圖 ---難點 ?。?!  

1)SVG繪圖:矢量繪圖技術,2000年出現,后納入H5標準 2)Canvas繪圖:位圖繪圖技術,H5提出的繪圖技術 3)WebGL繪圖:3D繪圖技術,尚未納入H5標準

canvas繪圖技術 canvas:畫布,H5實現2D繪圖技術  

<canvas width="500" height="400">您的瀏覽器不支持canvas</canvas>

 canvas標簽在瀏覽器默認是300*150的inline-block。畫布的寬高只能使用HTML/JS屬性來賦值,不能使用css樣式賦值!  每個畫布上有且只有一個“畫筆”對象 ———稱為“繪圖上下文”對象——使用該對象進行繪圖! var ctx = canvas.getContext('2d') //現在只有2d的 得到畫布上的畫布對象  

1)使用canvas繪制矩形

 繪制矩形

ctx.lineWidth = 1 描邊寬度ctx.fillStyle='#000' 填充樣式顏色ctx.strokeStyle='#000' 描邊樣式顏色ctx.fillRect(x,y,w,h); //填充一個矩形 x ,y坐標 w,h 寬高ctx.strokeRect(x,y,w,h); //描邊一個矩形ctx.clearRect(x,y,w,h) 清除一個矩形范圍內所有的繪圖 

2)使用canvas繪制文本  

 一段文字的定位點在其文本基線的起點

ctx.textBaseline = 'alphabetic' //文本基線 默認值是第三根線ctx.font="12px sans-serif" //字體大小和樣式ctx.fillText(str,x,y) //填充ctx.strokeText(str,x,y) //描邊一段文本ctx.measureText(str)  //基于當前文字大小字體設置測量文本,返回的對象是{width:x} 

3)使用canvas繪制路徑

path:類似于ps中的“鋼筆工具”,由多個坐標點組成的任意形狀,路徑不可見,可用于“描邊”、 “填充”,“裁剪”。

ctx.beginPath() //開始一條新路徑ctx.closePath() //閉合當前路徑ctx.moveTo(x,y) //移動到指定點ctx.lineTo(x,y) //從當前點到指定點畫直線ctx.arc(cx,cy,r,start,end) ; //繪制圓拱路徑 //cx cy 是圓心坐標xy r是半徑 ,start 開始角度,end結束角度 

 角度制:360 = 弧度制:2PI  180 = 1PI 例如

ctx.arc(100,200,30,0,2*Math.PI)ctx.stroke(); //當前路徑描邊ctx.fill(); //當前路徑填充ctx.clip();// 使用當前路徑進行裁剪//*********連接處的角***********ctx.lineJoin='miter' //線的連接處出現尖角ctx.lineJoin='round' //線的連接處出現圓角ctx.lineJoin = 'bevel' //線的連接處出現方角 

4)使用canvas繪制圖像

canvas屬于客戶端技術,圖片在服務器中,所以瀏覽器必須先下載要繪制的圖片,  且等待圖片異步加載完成:

var img = new Images();img.src='x.png';console.log(img.width); //0 異步請求圖片img.onload=function(){console.log(img.width,img.height); //有值 圖片加載完成//開始繪制圖片到畫布上ctx.drawImage(img,x,y); //原始大小繪圖ctx.drawImage(img,x,y,w,h); //設置寬高} 

 監聽鼠標在畫布上方移動事件

ctx.onmousemove = function(e){x=e.offsetX;y=e.offsetY;console.log(x,y);} 

2、canvas繪圖中漸變

 線性漸變:linearGradient 徑向漸變:radialGradient 可以參考ps中漸變效果、

var g = ctx.createLinearGradient(x1,y1,x2,y2);g.addColorStop(0,'#f00');g.addColorStop(0.5,'#ff0');g.addColorStop(1,'#0f0');ctx.strokeStyle=g; 

 

 難點:坐標系坐標軸 、單詞比較多

3、繪圖變形

ctx.rotate(弧度) //旋轉繪圖上下文對象(即畫筆),軸點是畫布的原點ctx.translate(x,y) //將整個畫布的原點平移到指定的點ctx.sava(); //保存畫筆當前的所有變形狀態值(游戲中從存盤)ctx.restore(); //恢復畫筆變形狀態到最近的一次保存(游戲中讀取存盤)ctx.save();//先保存原始狀態var deg = 10*Math.PI/180; //要旋轉的角度 旋轉10度ctx.rotate(deg); //旋轉ctx.drawImage(img,0,0); //畫圖 ,畫筆是歪的 畫什么都是歪的ctx.restore();// 取出存盤時保存的原始狀態 

(五)SVG繪圖

先來了解一下什么是位圖和矢量圖。簡單了解一下就可以。

位圖:由一個又一個像素點組成,每個點各有自己的顏色,色彩細膩。  矢量圖:由一個又一個線條組成,每個線條可以指定顏色,方向,可以無限縮放,但顏色細節不夠豐富

一、SVG繪圖 使用標簽進行繪圖,可以直接綁定事件監聽

<svg width="300" height="200" xmlns="http://www.w3.org/2000/svg">   <rect width="100" height="100"></rect></svg> 

二、如何js創建一個svg標簽!

//var r1 = document.createElement('rect'); 創建不了這個svg元素 因為有年限和命名空間  (就是說這樣不行 要用下面的方法創建!?。。。﹙ar r1= document.createElementNS('http://www.w3.org/2000/svg','rect');r1.setAttribute('width','50');r1.setAttribute('height',300);s1.appendChild(r1); 

三、svg創建橢圓

<svg width="300" height="200" id="c6">  <ellipse rx="100" ry="40" cx="100" cy="100" fill="#faa" stroke="#a00"></ellipse></svg> 

四、svg創建直線

<svg width="300" height="200" id="c6">  <line x1="0" y1="0" x2="100" y2="200" stroke="#000" stroke-width="50" stroke-linecap="square"></line></svg>

注:stroke-linecap="square"有多出來的方形 ,stroke-linecap="round"多出來圓形的區域,stroke-linecap="butt"不出來多方形   (也就是說你創建的直線設置這些屬性頭尾有區別!自己試一下就知道了!細節很重要?。?/p>

五、svg創建折線

<svg width="300" height="200" id="c6">  <polyline points="50,50 100,300 150,100"></polyline> //出來的是三角形  <polyline points="50,50 100,300 150,100" fill="transparent" stroke="#000"></polyline> //出來的是折線</svg> 

六、地理定位  (以后不用客戶端,我們也可以自己定位咯!)

Geolocation:地理定位,使用JS獲取當前瀏覽器所在的地理坐標(經度,維度,海拔,速度)  數據,用于實現LBS應用(Location Based Service),如餓了么,高德導航...

手機瀏覽器如何獲得定位信息:

1)首選手機中的GPS芯片與衛星通信,定位精度在米 2)次選手機基站進行定位獲取,定位精度在公里 (違法的) PC瀏覽器如何獲得定位信息: 1)通過IP地址進行反向解析,定位精度取決于IP地址庫的大小

HTML5中提供了一個新的對象,用于獲取當前瀏覽器的定位信息:

window.navigator.geolocation{  getCurrentPosition:fn, //獲得當前定位信息  watchPosition:fn, //監視定位數據的改變  clearWatch :fn // 取消監視} 

2、擴展:在網頁中如何嵌入百度地圖

1)注冊百度開發者賬號 map.baidu.com ---> lbsyun.baidu.com  2)創建一個網站;登錄百度地圖,為網站申請一個地圖的AccessKey  3)在自己的網頁中嵌入百度地圖提供的API,嵌入百度地圖

這里不多講這個如何嵌入了?。ㄒ涀∮冒俣鹊貓D必須注冊賬號,然后引用人家的庫就對了!)

七、拖放API 

前面有講過拖放:小伙伴們自己往前找一下以前的博客。

八 存儲

存儲主要就是cookie和session(前面一找一大堆的寫法我講一下區別吧還有注意事項) :要記住session是關了瀏覽器就消失的,cookie是關了瀏覽器也不消失的!注意注意:cookie存儲時候必須加時間、不加時間的話關閉瀏覽器之后同樣消失!這瀏覽器存儲利用起來解決了很多功能問題比如記住密碼等功能?。?/p>

九 web Socket

這個東西說不說呢。。。。。還是稍微簡單的講一下吧,全靠領悟啊~~

web socket 是一個可以在服務器與客戶端之間建立一個非http的雙向連接!

這個連接是實時的,也是永久的。

服務器可以主動推送消息。

服務器不在需要輪詢客戶端的請求,服務器與客戶端之間通信無需重新建立連接。

也就是可持續性的 來回通訊。

如何創建呢?一段代碼搞定

var webSocket = new WebSocket (“ws://localhost:8005/socket”);//url 必須以“ws” 或者“wss” 文字作為開頭:因為不是http  是websocket嗎,人家自己的標識,加密傳送,記住就好了。webSocket.send() //發送文本數據,只可以發送文本。(使用json對象把js對象轉換文本數據后進行發送)webSocket.close();//關閉切斷通訊連接。webSocket.onmessage= function(event){  var data=event.data;}  // 接收服務器傳來的消息webSocket.onopen =function(event){  //開始通訊時的處理}webSocket.onclose =function(event){  //通訊結束時的處理} 

總結

以上所述是小編給大家介紹的html5新特性與用法大全,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到HTML教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91亚洲一区精品| 色偷偷偷亚洲综合网另类| 98精品国产高清在线xxxx天堂| 亚洲国产一区二区三区在线观看| 亚洲欧美综合精品久久成人| 国产精品国语对白| 97超视频免费观看| 亚洲精品国产精品久久清纯直播| 亚洲欧美一区二区三区情侣bbw| 亚洲自拍欧美色图| 久久久电影免费观看完整版| 亚洲天堂av综合网| 国产午夜精品全部视频播放| 日韩中文字幕精品| 色综合久久中文字幕综合网小说| 精品高清美女精品国产区| 久久99精品久久久久久噜噜| 久久亚洲春色中文字幕| 国产美女被下药99| 中文在线不卡视频| 亚洲欧洲一区二区三区久久| 国产99视频在线观看| 欧美性xxxx极品hd满灌| 91精品视频播放| 国产视频一区在线| 欧美第一淫aaasss性| 岛国av午夜精品| 亚洲区bt下载| 国产亚洲欧美视频| 狠狠色狠狠色综合日日五| 色播久久人人爽人人爽人人片视av| 亚洲人成亚洲人成在线观看| 国产欧美一区二区三区四区| 亚洲情综合五月天| 久久久在线免费观看| 国产精品视频内| 精品人伦一区二区三区蜜桃网站| 久久久久国产精品免费网站| 国产亚洲欧美视频| 日韩中文字幕精品视频| 亚洲国产日韩欧美在线图片| 色婷婷久久一区二区| 国产精品成人aaaaa网站| 亚洲女人天堂网| 精品露脸国产偷人在视频| 日韩高清电影好看的电视剧电影| 国产免费一区二区三区香蕉精| 国产一区二区丝袜高跟鞋图片| 久久不射热爱视频精品| 尤物九九久久国产精品的特点| 中文字幕av一区二区| 91精品视频免费看| 国产日韩欧美在线视频观看| 亚洲精品久久久久久下一站| 欧美亚洲成人免费| 久久亚洲国产精品成人av秋霞| 日韩激情片免费| 大荫蒂欧美视频另类xxxx| 在线视频国产日韩| 国外成人免费在线播放| 亚洲欧美日韩久久久久久| 欧美日韩裸体免费视频| 亚洲国产精品久久久久秋霞蜜臀| 成人免费网站在线看| 精品国产乱码久久久久久虫虫漫画| 亚洲国产精品嫩草影院久久| 国产成人一区二区三区电影| 国产丝袜一区二区| 色小说视频一区| 在线观看国产欧美| 日韩欧美国产高清91| 成人444kkkk在线观看| 一二美女精品欧洲| 国产精品www| 久热精品视频在线观看| 91亚洲精华国产精华| 亚洲男人天堂2023| 亚洲国产一区二区三区在线观看| 欧美在线视频播放| 97精品视频在线观看| 色无极影院亚洲| 日韩美女av在线免费观看| 亚洲第一国产精品| 亚洲精品videossex少妇| 国产人妖伪娘一区91| 亚洲视频axxx| 久久精品亚洲热| 亚洲免费视频观看| 亚洲精品不卡在线| 国产精品偷伦视频免费观看国产| 欧美激情亚洲综合一区| 日韩av在线免费观看一区| 蜜月aⅴ免费一区二区三区| 久久久久日韩精品久久久男男| 欧美黑人性生活视频| 亚洲黄色av网站| 欧美激情三级免费| 北条麻妃一区二区在线观看| 亚洲欧美日韩在线一区| 国产免费一区二区三区在线能观看| 欧美成人手机在线| 一本大道香蕉久在线播放29| 国产在线拍偷自揄拍精品| 亚洲jizzjizz日本少妇| 91国内揄拍国内精品对白| 成人免费视频网址| 欧美在线视频网| 欧美老女人xx| 国产精品第8页| 国产亚洲欧美日韩美女| 日韩av黄色在线观看| 欧亚精品中文字幕| 色樱桃影院亚洲精品影院| 国产精品久久久久9999| 国产精品都在这里| 97久久精品在线| 韩国三级日本三级少妇99| 欧美国产日韩xxxxx| 亚洲精品大尺度| 亚洲一区精品电影| 亚洲天堂av图片| 亚洲欧美国产精品| 成人精品久久久| 日韩欧美在线网址| 日韩av网站大全| 国产一区二区三区中文| 国产999精品久久久影片官网| 欧美国产日韩一区二区在线观看| 日韩中文字幕av| 亚洲人成啪啪网站| 国产精品一区电影| 91国产美女视频| 国产女同一区二区| 国产丝袜视频一区| 日本国产欧美一区二区三区| 亚洲欧美日韩精品久久亚洲区| 一级做a爰片久久毛片美女图片| 亚洲精品中文字幕有码专区| 4p变态网欧美系列| 91亚洲精品久久久久久久久久久久| 亚洲欧洲成视频免费观看| 久久久久一本一区二区青青蜜月| 久久久久久网址| 亚洲图中文字幕| 久久91精品国产91久久跳| 欧美xxxx做受欧美| 亚洲欧美日本伦理| 97超级碰碰人国产在线观看| 亚洲欧美国产va在线影院| 美女国内精品自产拍在线播放| 欧洲成人免费aa| 国产精品久久久久一区二区| 欧美亚洲午夜视频在线观看| 岛国av一区二区三区| 亚洲精品xxx| 亚洲电影免费观看高清完整版在线| 精品久久久久久中文字幕大豆网| 韩国精品久久久999| 亚洲二区在线播放视频| 精品美女久久久久久免费| 成人av色在线观看| 情事1991在线| 成人在线国产精品| 国产精品无码专区在线观看|