亚洲综合极品香蕉久久网,久久夜精品综合缴情五月 ,亚洲动漫成人一区二区,国产在线不卡视频,国产丝袜精品不卡,亚洲乱码日产精品bd,久久久久久国产精品免费网站,亚洲综合av一区二区三区
×
新網 > 建站推廣 > 正文

當前窗口獲得焦點js事件【visibilitychange】

  • 作者:sdfcsd
  • 來源:互聯網
  • 瀏覽:100
  • 2020-04-17 15:42:15

當前窗口獲得焦點js事件,html5發布之前我們使用window.onfocus和window.onblur來獲得窗口焦點和失去窗口焦點,

webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial>

當前窗口獲得焦點js事件,html5發布之前我們使用window.onfocus和window.onblur來獲得窗口焦點和失去窗口焦點,

 監聽 onfocus() 和window.onblur()事件實現

//當前窗口得到焦點 
window.onfocus = function() { 
  //播放動畫或視頻 
}; 
 
//當前窗口失去焦點 
window.onblur = function() { 
  //暫停動畫或視頻 
};

這個方法可以實現切換標簽暫停動畫視頻,但是會帶來一個問題,由于是判斷焦點,如果是在當前頁面上鋪上一個小窗口,那當前頁面就暫停了動畫,試想,如果你一邊看片,一邊開個聊天窗口與MM聊天,當你操作聊天窗口的時候,視頻暫停了,這并不是你想要的效果。

現在我們來看看HTML5是怎么解決的。H5 提供了很多簡單實用的 API,Page Visibility API 就是其中之一。 Page Visibility API能有效的幫助我們完成這樣的判斷。

 使用html5的Page Visibility API來實現

這個 API 本身非常簡單,由以下三部分組成。

document.hidden:表示頁面是否隱藏的布爾值。頁面隱藏包括 頁面在后臺標簽頁中 或者 瀏覽器最小化 (注意,頁面被其他軟件遮蓋并不算隱藏,比如打開的 sublime 遮住了瀏覽器)。

document.visibilityState:表示下面 4 個可能狀態的值

hidden:頁面在后臺標簽頁中或者瀏覽器最小化

visible:頁面在前臺標簽頁中

prerender:頁面在屏幕外執行預渲染處理 document.hidden 的值為 true

unloaded:頁面正在從內存中卸載

Visibilitychange事件:當文檔從可見變為不可見或者從不可見變為可見時,會觸發該事件。

這樣,我們可以監聽 Visibilitychange 事件,當該事件觸發時,獲取 document.hidden 的值,根據該值進行頁面一些事件的處理。

document.addEventListener(\'visibilitychange\', function() { 
  var isHidden = document.hidden; 
  if (isHidden) { 
    // 動畫視頻暫停 
  } else { 
    // 動畫視頻開始 
  } 
});

結合demo中的實例,切換標簽或者最小化的時候,demo中的視頻會暫停,恢復當前頁面時,demo中的視頻會繼續播放。完整的代碼如下:

var hidden, visibilityChange;  
if (typeof document.hidden !== "undefined") {  
  hidden = "hidden"; 
  visibilityChange = "visibilitychange"; 
} else if (typeof document.msHidden !== "undefined") { 
  hidden = "msHidden"; 
  visibilityChange = "msvisibilitychange"; 
} else if (typeof document.webkitHidden !== "undefined") { 
  hidden = "webkitHidden"; 
  visibilityChange = "webkitvisibilitychange"; 
} 
  
var videoElement = document.getElementById("videoElement"); 
 
// 如果頁面被隱藏,則暫停播放,如果頁面恢復,則繼續播放 
function handleVisibilityChange() { 
  if (document[hidden]) { 
    videoElement.pause(); 
  } else { 
    videoElement.play(); 
  } 
} 
 
// 判斷瀏覽器的支持情況 
if (typeof document.addEventListener === "undefined" || typeof document[hidden] === "undefined") { 
  consol.log("This demo requires a browser, such as Google Chrome or Firefox, that supports the Page Visibility API."); 
} else { 
  // 監聽visibilityChange事件    
  document.addEventListener(visibilityChange, handleVisibilityChange, false); 
     
  // 當播放器暫停的時候,將頁面標題設置為:Paused. 
  videoElement.addEventListener("pause", function(){ 
    document.title = \'Paused\'; 
  }, false); 
     
  // 當播放器正常播放時,將頁面標題設置為:Playing. 
  videoElement.addEventListener("play", function(){ 
    document.title = \'Playing\';  
  }, false); 
}

免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。

免費咨詢獲取折扣

Loading
主站蜘蛛池模板: 人妻无码少妇一区二区| 国产av偷闻女邻居内裤被发现| 国产精品玩偶在线观看| 中文字幕在线不卡一区二区 | 99久久精品九九亚洲精品| 老司机性色福利精品视频| 午夜精品久久久久久久喷水| 特级无码毛片免费视频播放| 青青草无码免费一二三区| 亚洲精品人成网线在线播放va| 国产成人亚洲综合网色欲网久下载 | 亚洲综合一区二区三区四区五区| 欧美老妇bbbwwbbbww| 夜夜爽日日澡人人添| 亚洲国产精品成人精品无码区| 亚洲欧美日韩中文字幕在线一区| 日韩午夜无码精品试看| 久久精品国产只有精品66 | 国产欧美在线一区二区三区 | 日韩人妻无码一本二本三本| 日韩精品无码中文字幕电影| 国产无遮挡又爽又黄大胸免费| 182tv午夜福利在线地址二| 9420免费高清在线观看视频| 东京热无码一区二区三区分类视频 | 亚洲欧美不卡高清在线观看| 久久99九九精品久久久久齐齐| 无遮挡边摸边吃奶边做视频免费| 99亚洲精品卡2卡三卡4卡2卡| 国产人成无码视频在线软件| 久艾草久久综合精品无码| 国语国产精精品国产国语清晰对话 | 亚洲国产桃花岛一区二区| 久久综合丝袜日本网| 国产亚洲精品一品区99热| 日本一道一区二区视频 | 精品国产拍国产天天人| 少妇高潮a视频| 亚洲日韩欧美在线观看一区二区三区| 亚洲精品无码久久久久app| 国产综合无码一区二区辣椒|