<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      你可能不知道的5個功能強大的 HTML5 API

        HTML5 新增了許多重要的特性,像 video、audio 和 canvas 等等,這些特性使得能夠很容易的網(wǎng)頁中包含多媒體內(nèi)容,而不需要任何的插件或者 API。而其它的新元素,例如 section、article、header 和 nav 等則是用來豐富網(wǎng)頁內(nèi)容。另外還有很多強大的 JavaScript API,下面這5個 HTML5 API 你可能不知道,通過今天這篇文章可以了解一下。

      Fullscreen API

        這個 HTML5 全屏 API 讓 Web 開發(fā)者可以通過編程控制頁面的全屏顯示。這個 API 對于 JavaScript 游戲開發(fā)特別有用,例如這款單人射擊游戲 BananaBread,在全屏狀態(tài)下玩那是相當酷。

      // 根據(jù)目標元素調(diào)用相應(yīng)的方法
      function launchFullScreen(element) {
        if(element.requestFullScreen) {
          element.requestFullScreen();
        } else if(element.mozRequestFullScreen) {
          element.mozRequestFullScreen();
        } else if(element.webkitRequestFullScreen) {
          element.webkitRequestFullScreen();
        }
      }
      
      // 在支持的瀏覽器中啟動全屏
      launchFullScreen(document.documentElement); // 整個頁面
      launchFullScreen(document.getElementById("videoElement")); // 單個元素
      

        使用教程   在線演示

       

      Page Visibility API

        Page Visibility API 可以幫助開發(fā)者監(jiān)聽用戶的焦點在哪個頁面選項卡上面以及用戶在選項庫或者窗口之間的移動情況。如果使用合理的話,當焦點不在某個頁面上的時候可以停止一些消耗很大的任務(wù)。

      // 部分瀏覽器只支持 vendor-prefixed
      // 根據(jù)瀏覽器支持情況設(shè)置隱藏屬性和可見狀態(tài)改變事件
      var hidden, state, visibilityChange; 
      if (typeof document.hidden !== "undefined") {
        hidden = "hidden";
        visibilityChange = "visibilitychange";
        state = "visibilityState";
      } else if (typeof document.mozHidden !== "undefined") {
        hidden = "mozHidden";
        visibilityChange = "mozvisibilitychange";
        state = "mozVisibilityState";
      } else if (typeof document.msHidden !== "undefined") {
        hidden = "msHidden";
        visibilityChange = "msvisibilitychange";
        state = "msVisibilityState";
      } else if (typeof document.webkitHidden !== "undefined") {
        hidden = "webkitHidden";
        visibilityChange = "webkitvisibilitychange";
        state = "webkitVisibilityState";
      }
      
      // 添加一個時間來實時改變頁面的標題
      document.addEventListener(visibilityChange, function(e) {
        // Start or stop processing depending on state
      }, false);
      

        使用教程   在線演示

       

      getUserMedia API

        特別有趣的一個 API,能夠調(diào)用電腦的攝像頭,結(jié)合 <video> 標簽和 Canvas 就能在瀏覽器中拍攝照片了。未來這個 API 將被廣泛用來讓瀏覽器和用戶之間互動。

      // 添加事件監(jiān)聽器
      window.addEventListener("DOMContentLoaded", function() {
        // 獲取元素,創(chuàng)建配置
        var canvas = document.getElementById("canvas"),
          context = canvas.getContext("2d"),
          video = document.getElementById("video"),
          videoObj = { "video": true },
          errBack = function(error) {
            console.log("Video capture error: ", error.code); 
          };
      
        // 添加視頻監(jiān)聽器
        if(navigator.getUserMedia) { // 標準的API
          navigator.getUserMedia(videoObj, function(stream) {
            video.src = stream;
            video.play();
          }, errBack);
        } else if(navigator.webkitGetUserMedia) { // WebKit 核心的API
          navigator.webkitGetUserMedia(videoObj, function(stream){
            video.src = window.webkitURL.createObjectURL(stream);
            video.play();
          }, errBack);
        }
      }, false);
      

        使用教程   在線演示

       

      Battery API

        顧名思義,這是一個電池 API ,明顯是為移動設(shè)備準備的,用于監(jiān)控電池的狀態(tài)。能夠通過事件監(jiān)聽電池電量的變化,電池的等級、可用時間等狀態(tài)。下面是是示例代碼,可以通過后面的教程鏈接學習更詳細的使用方法。

      // 獲取電池對象
      var battery = navigator.battery || navigator.webkitBattery || navigator.mozBattery;
      
      // 一組非常有用的電池屬性
      console.warn("Battery charging: ", battery.charging); // true
      console.warn("Battery level: ", battery.level); // 0.58
      console.warn("Battery discharging time: ", battery.dischargingTime);
      
      // 監(jiān)聽電池狀態(tài)
      battery.addEventListener("chargingchange", function(e) {
        console.warn("Battery charge change: ", battery.charging);
      }, false);
      

        使用教程

       

      Link Prefetching

        這個鏈接預取 API 非常有用,讓開發(fā)者可以控制網(wǎng)頁資源在后臺安靜的預先加載,這樣用戶在瀏覽網(wǎng)站或者使用 Web 應(yīng)用程序的時候能夠有流暢的使用體驗。可以預加載整個頁面,也可以是單個資源,示例代碼如下:

      <!-- 預加載整個頁面 -->
      <link rel="prefetch"  />
       
      <!-- 預加載一張圖片 -->
      <link rel="prefetch"  />

        使用教程

       

        上面這5個 HTML5 API 值得關(guān)注,在不久的將來這些 API 將被廣泛的使用,因此越早掌握它們可以幫助你為構(gòu)建優(yōu)秀的 Web 應(yīng)用打下堅實的基礎(chǔ)。通過使用教程可以快速的熟悉這些 API 的基本用法和使用場景,提供的在線演示展示了直觀的應(yīng)用情況。

       

      您可能還喜歡

       

       

      英文鏈接:5 More HTML5 APIs You Didn’t Know Existed

      編譯來源:夢想天空 ◆ 關(guān)注前端開發(fā)技術(shù) ◆ 分享網(wǎng)頁設(shè)計資源

      posted @ 2012-11-15 14:04  夢想天空(山邊小溪)  閱讀(29809)  評論(31)    收藏  舉報
      主站蜘蛛池模板: 国产中文字幕久久黄色片| 欧美牲交a欧美牲交aⅴ免费真 | 熟妇人妻中文a∨无码| 男女扒开双腿猛进入爽爽免费看| 深泽县| 日韩激情无码av一区二区| 一卡2卡三卡4卡免费网站| 国产精品剧情亚洲二区| 国产老女人精品免费视频| 亚洲欧美偷国产日韩| 影视先锋av资源噜噜| 日韩中文字幕在线不卡一区 | 丰满熟妇乱又伦在线无码视频| 亚洲大尺度无码无码专线| 亚洲国产精品综合久久2007| 国产精品国产精品国产专区| 中文字幕亚洲资源网久久| 亚洲一区二区三区在线| 国产欧美日韩精品丝袜高跟鞋| 国产偷自视频区视频| 人人人爽人人爽人人av| 欧洲免费一区二区三区视频| 你懂的一区二区福利视频| 韩国精品久久久久久无码| 国产精品日韩av在线播放| 99国产欧美另类久久久精品| 中文字幕精品人妻丝袜| 少妇伦子伦情品无吗| 国产小受被做到哭咬床单GV| 国产亚洲精品AA片在线播放天 | 国产综合色在线精品| 免费无码高H视频在线观看| 国产精品va在线观看无码不卡| 中文字幕有码在线第十页| 久久久久国产一区二区| 亚洲成人一区二区av| 人妻精品动漫H无码中字| 国产老妇伦国产熟女老妇高清 | 又爽又黄无遮挡高潮视频网站| av鲁丝一区鲁丝二区鲁丝三区 | 亚洲蜜臀av乱码久久|