簡體   English   中英

如何檢測瀏覽器窗口是否處於活動狀態

[英]How do I detect if the browser window is active

我目前使用的代碼就是這個

var focus;
function focuswindow() { focus = true; }
function hidewindow() { focus = false; }
window.onfocus = focuswindow();
window.onblur = hidewindow();

這個想法是它可以像這樣使用

if( focus ) { //do something
}

然而它不起作用。 此外,它只需要在Chrome上工作(因此沒有遺留的IE內容),因為它適用於Chrome擴展程序。

它不起作用的原因是你立即調用函數並將undefined的返回值undefinedonfocusonblur

相反, onfocusonblur應該按名稱引用函數。

嘗試這個:

window.onfocus = focuswindow;
window.onblur = hidewindow;

請注意,我刪除了()調用運算符。 現在onfocusonblur正在引用這些函數,並在事件發生時調用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM