濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > DIV的失去焦點(diǎn)(blur)實(shí)現(xiàn)方法

DIV的失去焦點(diǎn)(blur)實(shí)現(xiàn)方法

熱門標(biāo)簽:默納克系統(tǒng)外呼顯示inns 東莞人工外呼系統(tǒng)多少錢 商丘電話自動(dòng)外呼系統(tǒng)怎么收費(fèi) 朝陽自動(dòng)外呼系統(tǒng) 400電話辦理尚景 周口導(dǎo)航地圖標(biāo)注 400電話是在哪里申請(qǐng) 地圖標(biāo)注地點(diǎn)下載 昌邑外呼系統(tǒng)

用防抖實(shí)現(xiàn)DIV鼠標(biāo)移出消失

由于div標(biāo)簽本身不支持onblur事件,所以對(duì)于點(diǎn)擊一個(gè)按鈕彈出的div,我們想要當(dāng)這個(gè)div失去焦點(diǎn)的時(shí)候,讓它消失不能使用的onblur來實(shí)現(xiàn)。

但是可以利用onmouseout和事件來實(shí)現(xiàn)DIV失去焦點(diǎn)消失的功能。直接使用onmouseout來實(shí)現(xiàn)移出消失可能會(huì)有一個(gè)問題:假設(shè)你的按鈕的位置和彈出的div的位置不是重合的那么會(huì)導(dǎo)致鼠標(biāo)移動(dòng)就會(huì)馬上去觸發(fā)onmouseout事件,從而沒什么卵用。

利用防抖、onmouseout、onmouseover組合來實(shí)現(xiàn)一個(gè)體驗(yàn)很好的blur事件

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

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

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

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

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

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《DIV的失去焦點(diǎn)(blur)實(shí)現(xiàn)方法》,本文關(guān)鍵詞  DIV,的,失去,焦點(diǎn),blur,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《DIV的失去焦點(diǎn)(blur)實(shí)現(xiàn)方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于DIV的失去焦點(diǎn)(blur)實(shí)現(xiàn)方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    西华县| 宜春市| 永吉县| 邢台市| 金湖县| 咸宁市| 海伦市| 绍兴市| 孟村| 富平县| 师宗县| 松溪县| 同德县| 博爱县| 辽中县| 呈贡县| 密山市| 龙胜| 牡丹江市| 鄂伦春自治旗| 鹤岗市| 三门峡市| 五莲县| 张家界市| 黄梅县| 亳州市| 滁州市| 新泰市| 淮北市| 专栏| 凌云县| 漯河市| 确山县| 彭山县| 高雄市| 叙永县| 大渡口区| 错那县| 天柱县| 蒙自县| 叶城县|