校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > DIV的失去焦點(blur)實現方法

DIV的失去焦點(blur)實現方法

熱門標簽:默納克系統外呼顯示inns 東莞人工外呼系統多少錢 商丘電話自動外呼系統怎么收費 朝陽自動外呼系統 400電話辦理尚景 周口導航地圖標注 400電話是在哪里申請 地圖標注地點下載 昌邑外呼系統

用防抖實現DIV鼠標移出消失

由于div標簽本身不支持onblur事件,所以對于點擊一個按鈕彈出的div,我們想要當這個div失去焦點的時候,讓它消失不能使用的onblur來實現。

但是可以利用onmouseout和事件來實現DIV失去焦點消失的功能。直接使用onmouseout來實現移出消失可能會有一個問題:假設你的按鈕的位置和彈出的div的位置不是重合的那么會導致鼠標移動就會馬上去觸發onmouseout事件,從而沒什么卵用。

利用防抖、onmouseout、onmouseover組合來實現一個體驗很好的blur事件

    /**
     *鼠標移動過div事件
     */
    function moveOverEvent(ele,outTimer) {
        let overTimer = null;
        return function(){
            clearTimeout(outTimer);     //div沒有消失的情況下,在移動進來div,那么就清除上次移出的事件
            clearTimeout(overTimer);    //防抖
            overTimer = setTimeout(()=>{        
                ele.style.display = "block";
            },500);                     
        }
    }
    /**
     * 鼠標移出
     */
    function moveOutEvent(ele,outTimer) {
        return function(){
            clearTimeout(outTimer);         //防抖
            outTimer = setTimeout(()=>{     //移動出去后等500ms,在消失這div
                ele.style.display = "none";
            },500);
        }
    }

然后無意中發現一個可以通過給div添加tabindex屬性,從而實現blur事件,所以上面的代碼可能是白寫了。(PS 我感覺上面的體驗會好一些,減少了很多誤觸)

//設置了tabindex后,元素默認加虛線,通過ouline=0進行去除(IE設置hidefocus="true")
<div tabindex="0" outline=0" hidefocus="true"></div>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:福建 沈陽 銅陵 那曲 揭陽 健身房 阿拉善盟 湖南

巨人網絡通訊聲明:本文標題《DIV的失去焦點(blur)實現方法》,本文關鍵詞  DIV,的,失去,焦點,blur,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《DIV的失去焦點(blur)實現方法》相關的同類信息!
  • 本頁收集關于DIV的失去焦點(blur)實現方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 嵊州市| 青海省| 土默特右旗| 隆尧县| 阿合奇县| 磴口县| 松溪县| 扬中市| 南华县| 曲沃县| 福贡县| 吴桥县| 安徽省| 浦城县| 万年县| 景东| 刚察县| 韶关市| 邓州市| 台州市| 安泽县| 横山县| 永兴县| 佳木斯市| 新沂市| 玉树县| 通州市| 黎川县| 普安县| 张家口市| 塔河县| 漳州市| 高唐县| 崇州市| 都匀市| 郎溪县| 柞水县| 福泉市| 曲周县| 泉州市| 天柱县|