zhangxinxu / quiz

小测答题收集区
536 stars 43 forks source link

DOM基础测试47期 #75

Open zhangxinxu opened 4 years ago

zhangxinxu commented 4 years ago

账户页有一个刷新账户余额的方法,假设名为getAccount();

请实现,无论从哪个页面哪种形式回到账户页(例如:切换浏览器选项卡或者APP的webview返回),或者首次进入账户页,都执行一次getAccount()方法。


本题考点在于如何判断当前页面进入可视态或者激活态。大家提交回答的时候,注意缩进距离,起始位置从左边缘开始;另外,github自带代码高亮,所以请使用下面示意的格式。

```js
// 你的JS代码写在这里
 ```

其他 本期小测没有直播,也没有打分,但是会反馈要点。

XboxYan commented 4 years ago
document.addEventListener( "visibilitychange", function(){
    if( !document.hidden ){
        getAccount();
    }
})
xxf1996 commented 4 years ago
document.addEventListener('visibilitychange', () => {
  if (!document.hidden) { // 页面由隐藏变为显示时
    getAccount()
  }
})
window.addEventListener('load', getAccount) // 页面第一次加载
zer0fire commented 4 years ago
document.addEventListener( "visibilitychange", function(){ // 可视态切换
    if( document.visibilityState === 'visible'){
        getAccount();
    }
})
getAccout() // 首次进入页面
liyongleihf2006 commented 4 years ago
document.addEventListener("visibilitychange", function() {
  var state = document.visibilityState
  if(state==='visible'){getAccount()}
});
getAccount()
livetune commented 4 years ago
window.addEventListener('focus', () => {
  getAccount()
})
ziven27 commented 4 years ago

看了大家的回答才知道 。 测试下来好像 focusvisibilitychange 都可以在切换 tab 的时候触发。

zhangxinxu commented 4 years ago

"visibilitychange" 和 直接执行。参考 @liyongleihf2006