鍍金池/ 問(wèn)答/HTML5  HTML/ 現(xiàn)在有一個(gè)前端需求,頁(yè)面在一段時(shí)間內(nèi)用戶不再點(diǎn)擊時(shí)。返回首頁(yè)。

現(xiàn)在有一個(gè)前端需求,頁(yè)面在一段時(shí)間內(nèi)用戶不再點(diǎn)擊時(shí)。返回首頁(yè)。

頁(yè)面在一段時(shí)間不訪問(wèn)時(shí)。返回首頁(yè)

回答
編輯回答
初心

var num = 0
setInterval(function(){

num++

},5000) 用戶有操作是情況 num清零 num達(dá)到臨界值 跳轉(zhuǎn)

2017年3月1日 13:09
編輯回答
拮據(jù)

先定義什么叫“不訪問(wèn)”。


綁定點(diǎn)擊事件,記錄時(shí)間,這種事,樓主應(yīng)該會(huì)的吧。

2018年4月26日 15:28
編輯回答
莫小染

參考:在document上綁定一個(gè)click事件 點(diǎn)擊記錄當(dāng)前時(shí)間。初始化一個(gè)全局的計(jì)時(shí)器每過(guò)5分鐘 比較當(dāng)前時(shí)間與最后一次點(diǎn)擊時(shí)間的差值 大于5分鐘則返回首頁(yè)
同樣的還有如keydown scroll事件也要記錄

2017年10月7日 17:30
編輯回答
夢(mèng)一場(chǎng)

可以寫個(gè)計(jì)時(shí)器的

setTimeout(function(){
    console.log('跳轉(zhuǎn)到首頁(yè)')
},10000);
2017年1月14日 21:03
編輯回答
吢涼

有個(gè)visibilitychange事件可以用來(lái)判斷頁(yè)面的可見(jiàn)性,掛監(jiān)聽(tīng)加個(gè)計(jì)時(shí)器應(yīng)該就可以了。

2017年1月22日 23:18
編輯回答
陪妳哭
    //定義秒
    var second = 0; 
    //定義分
    var minute = 0; 
    //定義時(shí)
    var hour = 0; 
    //定義定時(shí)器
    var timer = '';

    //兼容性寫法
    var hiddenProperty = 'hidden' in document ? 'hidden' :    
        'webkitHidden' in document ? 'webkitHidden' :    
        'mozHidden' in document ? 'mozHidden' :    
        null;  
    var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');
    
    //綁定頁(yè)面事件
    var onVisibilityChange = function(){
        // 如果頁(yè)面沒(méi)有隱藏;
        if (!document[hiddenProperty]) {  
            console.log('在瀏覽頁(yè)面');
            //清除定時(shí)
            clearInterval(timer);
            console.log('截止剛才訪問(wèn)了'+second+'秒');
            second = 0;
            console.log('現(xiàn)在已經(jīng)清為'+second+'秒');
        }else{
            console.log('不在瀏覽頁(yè)面');
            // 開(kāi)始定時(shí)
            timer = window.setInterval(function(){
                second++; 
                if(second==60){ 
                second=0;minute+=1; 
                } 
                if(minute==60) { 
                minute=0;hour+=1; 
                } 
                console.log(second);
                //code here
            },1000);  
        }
    }
    document.addEventListener(visibilityChangeEvent, onVisibilityChange);
2018年2月11日 00:31