欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用?JS?判斷用戶是否處于活躍狀態(tài)的案例詳解

 更新時間:2024年05月17日 09:02:40   作者:燈會發(fā)光  
這篇文章主要介紹了如何使用?JS?判斷用戶是否處于活躍狀態(tài),案例演示了如何獲取用戶活躍狀態(tài),時間閾值定為5秒,超出該閾值沒有操作表示非活躍,否則屬于正在活躍中,需要的朋友可以參考下

有時候,我們需要在網(wǎng)頁判斷用戶是否處與非活躍狀態(tài),如果用戶長時間沒有在頁面上進(jìn)行任何操作,我們則判定該用戶是非活躍的。 在 javascript 中我們可以通過監(jiān)聽某些鼠標(biāo)或鍵盤相關(guān)的事件來判定用戶是否在活躍中。

案例演示

在線演示 - 使用 JS 判斷用戶是否處于活躍狀態(tài)

實現(xiàn)代碼

案例演示了如何獲取用戶活躍狀態(tài),時間閾值定為5秒,超出該閾值沒有操作表示非活躍,否則屬于正在活躍中

html

<p id="userState"></p>

js

//活躍狀態(tài),true活躍中,false非活躍
let state = false;
//定時器
let timer = null;
//非活躍判定閾值,5秒沒有任何活動表示非活躍
let timeout = 5000;
//用于展示狀態(tài)信息的html元素
let userStateEl = document.getElementById('userState');
//批量添加事件監(jiān)聽
[
    'mousemove',    //鼠標(biāo)移動
    'mousedown',    //鼠標(biāo)按下
    'touchstart',   //觸摸屏幕(移動端)
    'wheel',        //鼠標(biāo)滾輪
    'resize',       //頁面尺寸變化
    'keydown',      //鍵盤輸入
]
.map(event =>{
    window.addEventListener(event, onActive)
})
//觸發(fā)活躍中
function onActive(){
    //更新狀態(tài)
    state = true;
    renderState();
    //重置定時器
    clearTimeout(timer);
    timer = setTimeout(() =>{
        state = false;
        renderState();
    }, timeout);
}
//更新狀態(tài)信息
function renderState(){
    if(state){
        userStateEl.textContent = "活躍中 "
    } else {
        userStateEl.textContent = "?非活躍狀態(tài)"
    }
}
//立刻觸發(fā)一次活躍中
onActive();

下載案例源碼

到此這篇關(guān)于如何使用 JS 判斷用戶是否處于活躍狀態(tài)的文章就介紹到這了,更多相關(guān)如何使用 JS 判斷用戶是否處于活躍狀態(tài)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JS Range HTML文檔/文字內(nèi)容選中、庫及應(yīng)用介紹

    JS Range HTML文檔/文字內(nèi)容選中、庫及應(yīng)用介紹

    本文的內(nèi)容基本上是基于“區(qū)域范圍對象(Range objects)”這個概念來說的
    2011-05-05
  • javascript 事件查詢綜合 推薦收藏

    javascript 事件查詢綜合 推薦收藏

    javascript 事件查詢綜合,需要的朋友可以參考下。
    2010-03-03
  • JS生態(tài)系統(tǒng)加速eslint解析器使用實例探索

    JS生態(tài)系統(tǒng)加速eslint解析器使用實例探索

    這篇文章主要為大家介紹了JS生態(tài)系統(tǒng)加速之eslint解析器使用實例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 點擊進(jìn)行復(fù)制的JS代碼實例

    點擊進(jìn)行復(fù)制的JS代碼實例

    這篇文章介紹了點擊進(jìn)行復(fù)制的JS代碼實例,有需要的朋友可以參考一下
    2013-08-08
  • 如何用JS判斷數(shù)組中是否存在某個值或者某個對象的值

    如何用JS判斷數(shù)組中是否存在某個值或者某個對象的值

    數(shù)組是我們編程中經(jīng)常使用的的數(shù)據(jù)結(jié)構(gòu)之一,在處理數(shù)組時,我們經(jīng)常需要在數(shù)組中查找特定的值,下面這篇文章主要給大家介紹了關(guān)于如何用JS判斷數(shù)組中是否存在某個值或者某個對象的值的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 九個超級好用的Javascript技巧

    九個超級好用的Javascript技巧

    在實際的開發(fā)工作過程中,積累了一些常見又超級好用的 Javascript 技巧和代碼片段,包括整理的其他大神的 JS 使用技巧,今天篩選了 9 個,以供大家參考
    2023-04-04
  • 詳解javascript立即執(zhí)行函數(shù)表達(dá)式IIFE

    詳解javascript立即執(zhí)行函數(shù)表達(dá)式IIFE

    本文主要介紹了javascript立即執(zhí)行函數(shù)表達(dá)式IIFE的相關(guān)知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • 微信小程序中如何使用flyio封裝網(wǎng)絡(luò)請求

    微信小程序中如何使用flyio封裝網(wǎng)絡(luò)請求

    這篇文章主要介紹了微信小程序中如何使用flyio封裝網(wǎng)絡(luò)請求,F(xiàn)ly.js 通過在不同 JavaScript 運行時通過在底層切換不同的 Http Engine來實現(xiàn)多環(huán)境支持,但同時對用戶層提供統(tǒng)一、標(biāo)準(zhǔn)的Promise API,需要的朋友可以參考下
    2019-07-07
  • js 鍵盤記錄實現(xiàn)(兼容FireFox和IE)

    js 鍵盤記錄實現(xiàn)(兼容FireFox和IE)

    用js實現(xiàn)鍵盤記錄,要關(guān)注瀏覽器的三種按鍵事件類型,即keydown,keypress和keyup,它們分別對應(yīng)onkeydown、onkeypress和onkeyup這三個事件句柄。一個典型的按鍵會產(chǎn)生所有這三種事件,依次是keydown,keypress,然后是按鍵釋放時候的keyup。
    2010-02-02
  • JavaScript實現(xiàn)星座查詢功能 附詳細(xì)代碼

    JavaScript實現(xiàn)星座查詢功能 附詳細(xì)代碼

    最近小編在做一個項目,其中涉及到一個模塊關(guān)于星座查詢功能,即在文本框中輸入一個生日值,點擊按鈕可以得到對應(yīng)的星座,怎么實現(xiàn)這個需求呢?下面小編通過示例代碼給大家介紹下,需要的朋友參考下吧
    2021-11-11

最新評論