[問題] 判斷目前畫面是否在顯示中

作者: mozzan (mozzan)   2014-04-10 22:56:11
我是使用 Java 開發網頁,GWT + Smartgwt + Js
因為目前有一個需求,就是我在畫面中有一個 Timer
會定時的向 Server 要資料,但是我希望
當使用者不再顯示這個畫面時停止 Timer。
那這部分有兩個目標
1. 網頁跳到別頁時(這邊的別頁是指用Js 和 Ajax 刻出來的,非傳統跳頁,且無錨點)
停止Timer,這邊因為原始的寫法是去判斷使用者所有能跳離這個分頁的情況
但後來發現實在太多地方要去判斷(ex: 當按了哪些按紐要關Timer..)
現在想要請教有沒有可以偵測目前畫面(element),是否"正顯示在螢幕上"的方法
2. 我記得有些網站會偵測目前瀏覽器是否在 focus 當中,若不是則會停止倒數器
之類的。其中像是瀏覽器縮小,或跳到別的瀏覽器分頁,或選到別的程式等等。
想請問這是要怎麼作?
煩請給個關鍵字即可,主要就 Js
感謝!!
作者: mmis1000 (秋月戀楓)   2014-04-10 23:00:00
requestAnimationFrame 理論上只有真的有畫面
作者: davidsky (Alive)   2014-04-10 23:00:00
visibilitychange
作者: Rplus (R+) (9527)   2014-04-10 23:58:00
推二樓 google: visibilitychange MDN
作者: mozzan (mozzan)   2014-04-12 12:49:00
後來做法是在timer判斷layout是不是visible

Links booklink

Contact Us: admin [ a t ] ucptt.com