1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      html5十大新特性是什么

      今天小編給大家分享一下html5十大新特性是什么的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

      創(chuàng)新互聯(lián)網(wǎng)站建設(shè)由有經(jīng)驗的網(wǎng)站設(shè)計師、開發(fā)人員和項目經(jīng)理組成的專業(yè)建站團隊,負責網(wǎng)站視覺設(shè)計、用戶體驗優(yōu)化、交互設(shè)計和前端開發(fā)等方面的工作,以確保網(wǎng)站外觀精美、成都網(wǎng)站建設(shè)、成都網(wǎng)站制作易于使用并且具有良好的響應性。

      html5的新特性有:1、語義化標簽(hrader、footer等),使得頁面的內(nèi)容結(jié)構(gòu)化,見名知義;2、增強型表單,擁有多個新的表單Input輸入類型,可提供更好的輸入控制和驗證;3、video和audio元素,提供了播放視頻和音頻文件的標準方法;4、Canvas繪圖;5、SVG繪圖;6、地理定位;7、拖放API;8、Web Worker;9、Web Storage等等。

      HTML5的十大新特性

      為了更好地處理今天的互聯(lián)網(wǎng)應用,HTML5添加了很多新元素及功能,比如: 圖形的繪制,多媒體內(nèi)容,更好的頁面結(jié)構(gòu),更好的形式 處理,和幾個api拖放元素,定位,包括網(wǎng)頁 應用程序緩存,存儲,網(wǎng)絡工作者,等

      (1)語義標簽

      語義化標簽使得頁面的內(nèi)容結(jié)構(gòu)化,見名知義

      標簽描述
      定義了文檔的頭部區(qū)域
      定義了文檔的尾部區(qū)域
      定義文檔的導航
      定義文檔中的節(jié)(section、區(qū)段)
      定義頁面獨立的內(nèi)容區(qū)域
      定義頁面的側(cè)邊欄內(nèi)容
      用于描述文檔或文檔某個部分的細節(jié)
      標簽包含 details 元素的標題
      定義對話框,比如提示框

      (2)增強型表單

      HTML5 擁有多個新的表單 Input 輸入類型。這些新特性提供了更好的輸入控制和驗證。

      輸入類型

      描述

      color

      主要用于選取顏色

      date

      從一個日期選擇器選擇一個日期

      datetime

      選擇一個日期(UTC 時間)

      datetime-local

      選擇一個日期和時間 (無時區(qū))

      email

      包含 e-mail 地址的輸入域

      month

      選擇一個月份

      number

      數(shù)值的輸入域

      range

      一定范圍內(nèi)數(shù)字值的輸入域

      search

      用于搜索域

      tel

      定義輸入電話號碼字段

      time

      選擇一個時間

      url

      URL 地址的輸入域

      week

      選擇周和年

      HTML5 也新增以下表單元素

      表單元素描述

      元素規(guī)定輸入域的選項列表

      使用 元素的 list 屬性與 元素的 id 綁定

      提供一種驗證用戶的可靠方法

      標簽規(guī)定用于表單的密鑰對生成器字段。

      用于不同類型的輸出

      比如計算或腳本輸出

      HTML5 新增的表單屬性

        • placehoder 屬性,簡短的提示在用戶輸入值前會顯示在輸入域上。即我們常見的輸入框默認提示,在用戶輸入后消失。

        • required  屬性,是一個 boolean 屬性。要求填寫的輸入域不能為空

        • pattern 屬性,描述了一個正則表達式用于驗證 元素的值。

        • min 和 max 屬性,設(shè)置元素最小值與最大值。

        • step 屬性,為輸入域規(guī)定合法的數(shù)字間隔。

        • height 和 width 屬性,用于 image 類型的 標簽的圖像高度和寬度。

        • autofocus 屬性,是一個 boolean 屬性。規(guī)定在頁面加載時,域自動地獲得焦點。

        • multiple 屬性 ,是一個 boolean 屬性。規(guī)定 元素中可選擇多個值。 

      (3)視頻和音頻

      • HTML5 提供了播放音頻文件的標準,即使用


      control 屬性供添加播放、暫停和音量控件。

      之間你需要插入瀏覽器不支持的

      目前,

      • HTML5 規(guī)定了一種通過 video 元素來包含視頻的標準方法。


        control 提供了 播放、暫停和音量控件來控制視頻。也可以使用dom操作來控制視頻的播放暫停,如 play() 和 pause() 方法。

        同時 video 元素也提供了 width 和 height 屬性控制視頻的尺寸.如果設(shè)置的高度和寬度,所需的視頻空間會在頁面加載時保留。如果沒有設(shè)置這些屬性,瀏覽器不知道大小的視頻,瀏覽器就不能再加載時保留特定的空間,頁面就會根據(jù)原始視頻的大小而改變。

        與 標簽之間插入的內(nèi)容是提供給不支持 video 元素的瀏覽器顯示的。

        video 元素支持多個source 元素. 元素可以鏈接不同的視頻文件。瀏覽器將使用第一個可識別的格式( MP4, WebM, 和 Ogg)

      (4)Canvas繪圖

      標簽只是圖形容器,必須使用腳本來繪制圖形。

      Canvas - 圖形

      1、創(chuàng)建一個畫布,一個畫布在網(wǎng)頁中是一個矩形框,通過 元素來繪制。默認情況下 元素沒有邊框和內(nèi)容。


      標簽通常需要指定一個id屬性 (腳本中經(jīng)常引用), width 和 height 屬性定義的畫布的大小,使用 style 屬性來添加邊框。你可以在HTML頁面中使用多個 元素

      2、使用Javascript來繪制圖像,canvas 元素本身是沒有繪圖能力的。所有的繪制工作必須在 JavaScript 內(nèi)部完成


      getContext("2d") 對象是內(nèi)建的 HTML5 對象,擁有多種繪制路徑、矩形、圓形、字符以及添加圖像的方法。

      設(shè)置 fillStyle 屬性可以是CSS顏色,漸變,或圖案。fillStyle默認設(shè)置是#000000(黑色)。fillRect(x,y,width,height) 方法定義了矩形當前的填充方式。意思是:在畫布上繪制 150x75 的矩形,從左上角開始 (0,0)。 

      Canvas - 路徑

      在Canvas上畫線,我們將使用以下兩種方法:

      moveTo(x,y) 定義線條開始坐標

      lineTo(x,y) 定義線條結(jié)束坐標

      繪制線條我們必須使用到 "ink" 的方法,就像stroke()。


      定義開始坐標(0,0), 和結(jié)束坐標 (200,100). 然后使用 stroke() 方法來繪制線條

      Canvas - 文本

      使用 canvas 繪制文本,重要的屬性和方法如下:

      font - 定義字體

      fillText(text,x,y) - 在 canvas 上繪制實心的文本

      strokeText(text,x,y) - 在 canvas 上繪制空心的文本

      使用 fillText():

      var c=document.getElementById("myCanvas");
      var ctx=c.getContext("2d");
      ctx.font="30px Arial";
      ctx.fillText("Hello World",10,50);

      使用 "Arial" 字體在畫布上繪制一個高 30px 的文字(實心)

      Canvas - 漸變

      漸變可以填充在矩形, 圓形, 線條, 文本等等, 各種形狀可以自己定義不同的顏色。

      以下有兩種不同的方式來設(shè)置Canvas漸變:

      createLinearGradient(x,y,x1,y1) - 創(chuàng)建線條漸變

      createRadialGradient(x,y,r,x1,y1,r1) - 創(chuàng)建一個徑向/圓漸變

      當我們使用漸變對象,必須使用兩種或兩種以上的停止顏色。

      addColorStop()方法指定顏色停止,參數(shù)使用坐標來描述,可以是0至1.

      使用漸變,設(shè)置fillStyle或strokeStyle的值為漸變,然后繪制形狀,如矩形,文本,或一條線。

      var c=document.getElementById("myCanvas");
      var ctx=c.getContext("2d");

      // Create gradient
      var grd=ctx.createLinearGradient(0,0,200,0);
      grd.addColorStop(0,"red");
      grd.addColorStop(1,"white");

      // Fill with gradient
      ctx.fillStyle=grd;
      ctx.fillRect(10,10,150,80);

      創(chuàng)建了一個線性漸變,使用漸變填充矩形

      Canvas - 圖像

      把一幅圖像放置到畫布上, 使用 drawImage(image,x,y) 方法

      var c=document.getElementById("myCanvas");
      var ctx=c.getContext("2d");
      var img=document.getElementById("scream");
      ctx.drawImage(img,10,10);

      把一幅圖像放置到了畫布上

      (5)SVG繪圖

      SVG是指可伸縮的矢量圖形

      SVG 與 Canvas兩者間的區(qū)別

      SVG 是一種使用 XML 描述 2D 圖形的語言。

      Canvas 通過 JavaScript 來繪制 2D 圖形。

      SVG 基于 XML,這意味著 SVG DOM 中的每個元素都是可用的。您可以為某個元素附加 JavaScript 事件處理器。

      在 SVG 中,每個被繪制的圖形均被視為對象。如果 SVG 對象的屬性發(fā)生變化,那么瀏覽器能夠自動重現(xiàn)圖形。

      Canvas 是逐像素進行渲染的。在 canvas 中,一旦圖形被繪制完成,它就不會繼續(xù)得到瀏覽器的關(guān)注。如果其位置發(fā)生變化,那么整個場景也需要重新繪制,包括任何或許已被圖形覆蓋的對象。

      (6)地理定位

      HTML5 Geolocation(地理定位)用于定位用戶的位置。

      window.navigator.geolocation {
         getCurrentPosition:  fn  用于獲取當前的位置數(shù)據(jù)
         watchPosition: fn  監(jiān)視用戶位置的改變
         clearWatch: fn  清除定位監(jiān)視
      }   

      獲取用戶定位信息:

      navigator.geolocation.getCurrentPosition(    function(pos){

      console.log('用戶定位數(shù)據(jù)獲取成功')
               //console.log(arguments);
               console.log('定位時間:',pos.timestamp)
               console.log('經(jīng)度:',pos.coords.longitude)
               console.log('緯度:',pos.coords.latitude)
               console.log('海拔:',pos.coords.altitude)
               console.log('速度:',pos.coords.speed)

      },    //定位成功的回調(diào)function(err){

      console.log('用戶定位數(shù)據(jù)獲取失敗')
               //console.log(arguments);

      }        //定位失敗的回調(diào))

      (7)拖放API

      拖放是一種常見的特性,即抓取對象以后拖到另一個位置。在 HTML5 中,拖放是標準的一部分,任何元素都能夠拖放。

      拖放的過程分為源對象和目標對象。源對象是指你即將拖動元素,而目標對象則是指拖動之后要放置的目標位置。

      拖放的源對象(可能發(fā)生移動的)可以觸發(fā)的事件——3個

      dragstart:拖動開始

      drag:拖動中

      dragend:拖動結(jié)束

      整個拖動過程的組成: dragstart*1 + drag*n + dragend*1

      拖放的目標對象(不會發(fā)生移動)可以觸發(fā)的事件——4個

      dragenter:拖動著進入

      dragover:拖動著懸停

      dragleave:拖動著離開

      drop:釋放

      整個拖動過程的組成1: dragenter*1 + dragover*n + dragleave*1

      整個拖動過程的組成2: dragenter*1 + dragover*n + drop*1

      dataTransfer:用于數(shù)據(jù)傳遞的“拖拉機”對象;

      在拖動源對象事件中使用e.dataTransfer屬性保存數(shù)據(jù):

      e.dataTransfer.setData( k,  v )

      在拖動目標對象事件中使用e.dataTransfer屬性讀取數(shù)據(jù):

      var value = e.dataTransfer.getData( k )

      (8)Web Worker

      當在 HTML 頁面中執(zhí)行腳本時,頁面的狀態(tài)是不可響應的,直到腳本已完成。

      web worker 是運行在后臺的 JavaScript,獨立于其他腳本,不會影響頁面的性能。您可以繼續(xù)做任何愿意做的事情:點擊、選取內(nèi)容等等,而此時 web worker 在后臺運行。

      首先檢測瀏覽器是否支持 Web Worker

       if(typeof(Worker)!=="undefined"){
        // 是的! Web worker 支持!
        // 一些代碼.....
        }else{
        // //抱歉! Web Worker 不支持
        }

      下面的代碼檢測是否存在 worker,如果不存在,- 它會創(chuàng)建一個新的 web worker 對象,然后運行 "demo_workers.js" 中的代碼

       if(typeof(w)=="undefined")
        {
        w=new Worker("demo_workers.js");
        }

      然后我們就可以從 web worker 發(fā)送和接收消息了。向 web worker 添加一個 "onmessage" 事件監(jiān)聽器:

       w.onmessage=function(event){
      document.getElementById("result").innerHTML=event.data;
      };

      當 web worker 傳遞消息時,會執(zhí)行事件監(jiān)聽器中的代碼。event.data 中存有來自 event.data 的數(shù)據(jù)。當我們創(chuàng)建 web worker 對象后,它會繼續(xù)監(jiān)聽消息(即使在外部腳本完成之后)直到其被終止為止。

      如需終止 web worker,并釋放瀏覽器/計算機資源,使用 terminate() 方法。

      完整的 Web Worker 實例代碼





      Count numbers:












      創(chuàng)建的計數(shù)腳本,該腳本存儲于 "demo_workers.js" 文件中

      var i=0; function timedCount()
      {
      i=i+1;
      postMessage(i);
      setTimeout("timedCount()",500);
      }

      timedCount();

      (9)Web Storage

      使用HTML5可以在本地存儲用戶的瀏覽數(shù)據(jù)。早些時候,本地存儲使用的是cookies。但是Web 存儲需要更加的安全與快速. 這些數(shù)據(jù)不會被保存在服務器上,但是這些數(shù)據(jù)只用于用戶請求網(wǎng)站數(shù)據(jù)上.它也可以存儲大量的數(shù)據(jù),而不影響網(wǎng)站的性能。數(shù)據(jù)以 鍵/值 對存在, web網(wǎng)頁的數(shù)據(jù)只允許該網(wǎng)頁訪問使用。

      客戶端存儲數(shù)據(jù)的兩個對象為:

        • localStorage - 沒有時間限制的數(shù)據(jù)存儲

        • sessionStorage - 針對一個 session 的數(shù)據(jù)存儲, 當用戶關(guān)閉瀏覽器窗口后,數(shù)據(jù)會被刪除。

      在使用 web 存儲前,應檢查瀏覽器是否支持 localStorage 和sessionStorage

      if(typeof(Storage)!=="undefined")
        {   // 是的! 支持 localStorage  sessionStorage 對象!
        // 一些代碼.....   } else
        {   // 抱歉! 不支持 web 存儲。
        }

      不管是 localStorage,還是 sessionStorage,可使用的API都相同,常用的有如下幾個(以localStorage為例):

        • 保存數(shù)據(jù):localStorage.setItem(key,value);

        • 讀取數(shù)據(jù):localStorage.getItem(key);

        • 刪除單個數(shù)據(jù):localStorage.removeItem(key);

        • 刪除所有數(shù)據(jù):localStorage.clear();

        • 得到某個索引的key:localStorage.key(index);

      (10)WebSocket

      WebSocket是HTML5開始提供的一種在單個 TCP 連接上進行全雙工通訊的協(xié)議。在WebSocket API中,瀏覽器和服務器只需要做一個握手的動作,然后,瀏覽器和服務器之間就形成了一條快速通道。兩者之間就直接可以數(shù)據(jù)互相傳送。瀏覽器通過 JavaScript 向服務器發(fā)出建立 WebSocket 連接的請求,連接建立以后,客戶端和服務器端就可以通過 TCP 連接直接交換數(shù)據(jù)。當你獲取 Web Socket 連接后,你可以通過 send()方法來向服務器發(fā)送數(shù)據(jù),并通過 onmessage事件來接收服務器返回的數(shù)據(jù)。



       
       
        W3Cschool教程(w3cschool.cn)
         
           
             
       
       
       
           

              運行 WebSocket
           

           
       

      以上就是“html5十大新特性是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


      分享標題:html5十大新特性是什么
      新聞來源:http://ef60e0e.cn/article/gecshd.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        罗江县| 河西区| 西乌珠穆沁旗| 阿拉尔市| 满洲里市| 梅河口市| 丹东市| 平江县| 双流县| 高邑县| 彭州市| 乌拉特后旗| 崇仁县| 长丰县| 九江市| 凤城市| 封开县| 临高县| 盘锦市| 大化| 新绛县| 永吉县| 华池县| 伊川县| 普格县| 迭部县| 宝应县| 桃园县| 牟定县| 忻城县| 江川县| 泰安市| 延边| 曲阳县| 庆云县| 石渠县| 宝应县| 永胜县| 海宁市| 乡城县| 平江县|