0
在我的網站上,有一個下載頁面。我想繼續等待我的用戶15秒下載頁面。我想在下載按鈕出現之前添加15秒計時器。同時,如果用戶點擊瀏覽器中的另一個選項卡或最小化瀏覽器,計時器應停止。如何檢測瀏覽器未最小化,相關選項卡未激活
我的問題是如何檢測用戶是否一直在網頁上觀看,這意味着瀏覽器沒有最小化,這個標籤是不活動的。如何在javascript
中執行此任務。
在我的網站上,有一個下載頁面。我想繼續等待我的用戶15秒下載頁面。我想在下載按鈕出現之前添加15秒計時器。同時,如果用戶點擊瀏覽器中的另一個選項卡或最小化瀏覽器,計時器應停止。如何檢測瀏覽器未最小化,相關選項卡未激活
我的問題是如何檢測用戶是否一直在網頁上觀看,這意味着瀏覽器沒有最小化,這個標籤是不活動的。如何在javascript
中執行此任務。
這裏準備使用的JS
(function() {
var hidden, visibilityChange;
if (typeof document.hidden !== "undefined") {
hidden = "hidden";
visibilityChange = "visibilitychange";
} else if (typeof document.mozHidden !== "undefined") {
hidden = "mozHidden";
visibilityChange = "mozvisibilitychange";
} else if (typeof document.msHidden !== "undefined") {
hidden = "msHidden";
visibilityChange = "msvisibilitychange";
} else if (typeof document.webkitHidden !== "undefined") {
hidden = "webkitHidden";
visibilityChange = "webkitvisibilitychange";
}
// If the page is hidden, pause the countdown;
// if the page is shown, resume the countdown
function handleVisibilityChange() {
if (document[hidden]) {
//pause your countdown
} else {
//resume your countdown
}
}
// Warn if the browser doesn't support addEventListener or the Page Visibility API
if (typeof document.addEventListener === "undefined" ||
typeof document[hidden] === "undefined") {} else {
// Handle page visibility change
document.addEventListener(visibilityChange, handleVisibilityChange, false);
}
})();
希望這能幫助你! :)
在這個問題http://stackoverflow.com/questions/2567832/code-to-make-div-appear-after-a-certain-amount-of-time你可以學習如何顯示你的按鈕後x秒使用jQuery延遲。 – Omid
@OmidHezaveh我只是想檢測選項卡是活動的和瀏覽器沒有最小化。 – Thusitha
我還沒有自己嘗試過,但可見性API可能會幫助您檢測該元素是處於查看狀態還是焦點狀態https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API – Omid