中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

HTML5實現頁面切換激活的PageVisibility API使用初探
來源:易賢網 閱讀:1476 次 日期:2016-07-07 11:37:02
溫馨提示:易賢網小編為您整理了“HTML5實現頁面切換激活的PageVisibility API使用初探”,方便廣大網友查閱!

這篇文章主要介紹了HTML5實現頁面切換激活的PageVisibility API使用初探,PageVisibility可以使我們在切換瀏覽器tab頁面時自動停止和播放視頻,需要的朋友可以參考下

HTMl5 推出了一個很“特別”的 API Page Visibility ,之所以說它特別,是因為這個 API 關注的是一個很少人留意的功能 —— 瀏覽器標簽( tab ) 是否被激活。這里必須解釋一下,這個“激活”,指的是這個標簽是否正被用戶瀏覽,或者說是否為當前標簽。

那么,這個 API 究竟有些什么用途呢?通常,很多傳統的頁面在用戶沒有激活它的時候,它還會繼續工作,例如,當用戶正在瀏覽新聞門戶,而他之前打開的 NBA 球賽頁面會繼續刷新獲取最新結果,視頻網站會繼續占用帶寬加載資源,于是,如果這類不必要的工作太多了,就會造成很多的資源浪費。因此,這貨相當有用:

Web 程序每隔一段時間會自動更新頁面信息,確保用戶獲取到及時的信息,但是,當用戶正在瀏覽其他頁面時,可以控制它暫停更新。

視頻網站在播放在線視頻時會不斷加載視頻,直到視頻加載完畢,但是,當用戶正在瀏覽其他頁面時,可以暫停加載視頻資源,節省帶寬。

網站首頁上有個大幻燈自動播放,當用戶瀏覽其他頁面了,就可以暫停播放。

于是,通過 Page Visibility ,我們可以至少達到以下一種或幾種的好處:

1.節省服務器資源,Ajax 輪詢這類服務器資源占用常常會被忽略,關閉這種請求可以節省資源。

2.節省內存消耗。

3.節省帶寬消耗。

因此,使用 Page Visibility 無論是對于用戶還是服務器都有好處。

接下來正式介紹一下這個 API 。Page Visibility 會在瀏覽器的 document 對象上添加兩個屬性 hidden 和 visibilityState 。如果當前的標簽被激活了,那么 document.hidden 的值為 false ,否則為 true 。visibilityState 則有4個可能值:

hidden:當瀏覽器最小化、切換標簽、電腦鎖屏時 visibilityState 值是 hidden

visible:當瀏覽器最頂級上下文(context)的 document 至少顯示在一個屏幕當中時,返回 visible;當瀏覽器窗口沒有最小化,但是瀏覽器被其他應用遮擋時,這時也為 visible

prerender:當文檔被加載到屏幕畫面以外或者不可見時返回 prerender,這個是非必要屬性,瀏覽器可選擇性的支持。

unloaded:當文檔將要被離開 ( unload ) 時返回 unloaded,瀏覽器也可選擇性的支持這個屬性

另外,document 上會添加 visibilitychange 事件,當 document 的可見性改變時觸發該事件。

好了,介紹完屬性,放上一個 Demo (打開后切換標簽即可測試)。

這個 Demo 的作用是監聽標簽的可見性是否改變 ,并且在標簽可見性發生改變時產生提示。

值得注意的是,在目前,瀏覽器對于 Page Visibility 的支持還是通過私有屬性支持,因此在檢測或利用 Page Visibility 提供的屬性時需要加上瀏覽器私有前綴,例如在 Chrome 中檢測上面的 visibilityState 屬性時,就需要檢測 document.webkitVisibilityState 而不是 document.visibilityState 。所以,Demo 中會首先檢測瀏覽器類型,然后才使用 Page Visibility 的 API 。主要代碼如下:

JavaScript Code

function browerKernel(){   

    var result;   

    ['webkit', 'moz', 'o', 'ms'].forEach(function(prefix){   

        if( typeof document[ prefix + 'Hidden' ] != 'undefined' ){   

            result = prefix;   

        }   

    });   

    return result;   

}   

function init(){   

    prefix = browerKernel();   

    var showTip = document.getElementById('showTip');   

    document.addEventListener( prefix  + 'visibilitychange', function onVisibilityChange(e){   

        var tip = null;   

                

        if( document[ prefix + 'VisibilityState' ] == 'hidden' ) tip = '<p>離開頁面</p>';   

        else if( document[ prefix + 'VisibilityState' ]  == 'visible' ) tip = '<p>進入頁面</p>';   

        showTip.innerHTML = showTip.innerHTML + tip;   

    });   

}   

window.onload = init();   

再再來看一個具體的例子,代碼如下:

JavaScript Code

<!DOCTYPE HTML>       

<html>       

<head>       

     <script type="text/javascript">       

          timer = 0;       

          function onLoad(){       

               document.addEventListener("visibilitychange",stateChanged);       

               document.addEventListener("webkitvisibilitychange", stateChanged);       

               document.addEventListener("msvisibilitychange", stateChanged);       

          }       

          function stateChanged(){       

               console.log(document.webkitVisibilityState);       

               if(document.hidden || document.webkitHidden || document.msHidden){       

                    //new tab or window minimized     

                    timer = new Date().getTime();       

               }       

               else {       

                    alert('You were away for ' + (new Date().getTime()-timer)/1000+ ' seconds.')       

               }       

          }       

     </script>       

</head>       

<body onLoad="onLoad()">       

</body>       

</html>    

在上面的代碼中,同樣,在CHROME運行下,在LOAD事件中,監聽了相關的 webkitvisibilitychange事件(這個在CHROME下),如果是IE 10,則是 msvisibilitychange事件,然后在回調函數中,開始了計算用戶在頁面停留的時間, 所以當你打開其他TAB頁或者最小化后,再切換回原來這個頁,則會JAVASCRIPT 彈出顯示:你離開了頁面多長時間 。

要注意的是,在CHROME中,屬性命名為webkitHidden,事件為 webkitvisibilitychange事件,而在IE 10中,屬性為msHidden 和 msVisibilityState.

更多信息請查看網頁制作
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
一本在线高清不卡dvd| 欧美性猛片xxxx免费看久爱| 欧美~级网站不卡| 在线成人国产| 国产一区二区无遮挡| 欧美日韩一区二区精品| 久久女同互慰一区二区三区| 欧美一区二区精品在线| 国产精品ⅴa在线观看h| 欧美日韩国产综合视频在线观看中文| 午夜日本精品| 一区二区免费在线视频| 亚洲婷婷在线| av成人福利| 91久久精品一区| 亚洲国产精品一区二区久| 国产精品欧美一区二区三区奶水| 国产精品久久久久7777婷婷| 一区二区日韩伦理片| 欧美精品一区二区三| 浪潮色综合久久天堂| 麻豆久久婷婷| 欧美精品一区二区在线播放| 欧美日本国产在线| 亚洲伊人久久综合| 久久精精品视频| 欧美一区二区在线免费观看| 亚洲电影观看| 久久精品日产第一区二区| 国产欧美日韩视频一区二区三区| 午夜精品久久久99热福利| 午夜天堂精品久久久久| 欧美国产精品久久| 久久婷婷成人综合色| 久久久久久97三级| 午夜久久久久久久久久一区二区| 国产精品精品视频| 欧美日韩国产91| 国产色综合天天综合网| 亚洲二区在线| 99精品视频网| 午夜一级在线看亚洲| 久久午夜色播影院免费高清| 一区二区免费在线视频| 亚洲区免费影片| 香蕉久久精品日日躁夜夜躁| 久久在线观看视频| 欧美精品手机在线| 欧美91大片| 亚洲经典三级| 日韩一级二级三级| 亚洲综合好骚| 狂野欧美一区| 欧美日本在线播放| 国产精品久久久久久av下载红粉| 国产欧亚日韩视频| 国产欧美日韩亚洲| 国产精品久久久久影院色老大| 国产一区二区三区观看| 亚洲国产精选| 亚洲欧美日韩成人高清在线一区| 亚洲国产另类久久精品| 亚洲另类黄色| 亚洲欧美日韩精品久久久久| 老司机午夜精品视频在线观看| 欧美少妇一区| 欧美不卡高清| 91久久久亚洲精品| 久久国产乱子精品免费女| 欧美成人日本| 国产亚洲精品自拍| 99国产一区| 久久大综合网| 欧美日韩免费观看一区三区 | 亚洲在线观看免费视频| 午夜精品在线看| 免费在线观看成人av| 国产精品第一页第二页第三页| 国产午夜精品全部视频播放| 亚洲国产精品一区二区第一页| 亚洲在线播放| 欧美人成在线视频| 精品1区2区| 亚洲免费在线播放| 国产精品乱人伦一区二区| 国产精品久久久一区二区三区| 校园激情久久| 欧美日韩卡一卡二| 在线免费精品视频| 亚洲欧美日韩在线观看a三区| 欧美成人高清视频| 国产精品推荐精品| 亚洲二区三区四区| 国产精品国产三级国产专播品爱网 | 久久久视频精品| 国产亚洲精品久久久久婷婷瑜伽| 欧美日韩高清免费| 免费观看日韩av| 久久成人精品无人区| 91久久在线观看| 国内欧美视频一区二区| 欧美日韩在线视频观看| 欧美中日韩免费视频| 亚洲美女区一区| 亚洲黄色av| 亚洲伦理中文字幕| 日韩天堂在线视频| 激情婷婷欧美| 国产精品亚洲综合| 亚洲一区二区三区精品动漫| 一区二区三区国产盗摄| 亚洲精品在线免费| 久久久久久9| 久久香蕉国产线看观看av| 国产欧美日韩精品丝袜高跟鞋| 国产精品女人网站| 国产精品久久一区主播| 国产一区二区三区久久悠悠色av | 99re热这里只有精品视频| 国产亚洲欧美一区二区三区| 亚洲精品久久久久久久久| 欧美日韩国产成人高清视频| 一本色道久久精品| 亚洲一区二区伦理| 99国产麻豆精品| 亚洲精品一线二线三线无人区| 亚洲国产精品久久久久| 欧美精品一区二区三区蜜桃 | 欧美成人一区在线| 免费观看成人| 欧美日韩日本国产亚洲在线| 亚洲精品在线二区| 欧美日韩国产123区| 亚洲久久一区| 国产精品v日韩精品| 性欧美videos另类喷潮| 国产亚洲制服色| 久久伊伊香蕉| 一区二区三区欧美成人| 国产在线观看精品一区二区三区| 欧美一区二区三区另类| 国产专区欧美精品| 欧美日韩在线一区二区| 国产亚洲一区精品| 国产日韩欧美在线视频观看| 国产精品理论片在线观看| 欧美视频免费| 欧美日韩成人在线视频| 欧美精品午夜视频| 欧美视频不卡中文| 欧美激情视频网站| 欧美日韩一区国产| 欧美涩涩网站| 欧美体内谢she精2性欧美| 欧美日韩综合| 国产精品青草久久久久福利99| 国产精品久久久久毛片大屁完整版| 欧美日韩一区二区免费在线观看| 欧美理论在线| 国产精品v欧美精品v日韩精品| 国产精品极品美女粉嫩高清在线 | 六月婷婷久久| 六月婷婷久久| 欧美日韩一二区| 国产精品视频xxxx| 国产自产精品| 亚洲级视频在线观看免费1级| 亚洲人成7777| 亚洲天堂第二页| 久久aⅴ国产紧身牛仔裤| 久久亚洲影音av资源网| 欧美大片在线观看一区| 欧美日韩第一页| 欧美成人dvd在线视频| 欧美日本免费| 国产麻豆成人精品| 玉米视频成人免费看| 亚洲乱码久久| 欧美一区二区三区在线| 欧美国产第一页| 国产精品男女猛烈高潮激情 | 亚洲国产精品视频| 一本大道久久精品懂色aⅴ| 亚洲欧美国产77777| 久久久av水蜜桃| 欧美精品福利视频| 国产精品入口尤物| 亚洲成色777777女色窝| 亚洲一二三级电影| 欧美亚洲在线观看| 欧美精品一区三区在线观看| 国产模特精品视频久久久久| 在线观看一区欧美| 亚洲制服av| 欧美国产先锋| 国产亚洲综合精品| 一本到12不卡视频在线dvd| 久久精品国产亚洲高清剧情介绍| 亚洲一区免费看| 美日韩精品视频免费看|