第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

延遲jquery懸停事件?

延遲jquery懸停事件?

catspeake 2019-08-27 10:17:00
延遲jquery懸停事件?我想在jquery中延遲一個懸停事件。當(dāng)用戶將鼠標懸停在鏈接或標簽上時,我正在讀取文件。如果用戶只是在屏幕上移動鼠標,我不希望立即發(fā)生此事件。有沒有辦法推遲事件的發(fā)射?謝謝。示例代碼:$(function() {     $('#container a').hover(function() {         $('<div id="fileinfo" />').load('ReadTextFileX.aspx',             {filename:'file.txt'},             function() {                 $(this).appendTo('#info');             }          );     },         function() { $('#info').remove(); }     });});更新: (1/14/09) 添加HoverIntent插件后,上面的代碼更改為以下代碼來實現(xiàn)它。實現(xiàn)起來非常簡單。$(function() {     hiConfig = {         sensitivity: 3, // number = sensitivity threshold (must be 1 or higher)         interval: 200, // number = milliseconds for onMouseOver polling interval         timeout: 200, // number = milliseconds delay before onMouseOut         over: function() {             $('<div id="fileinfo" />').load('ReadTextFileX.aspx', {filename:'file.txt'},                 function() {                    $(this).appendTo('#info');                 }              );         }, // function = onMouseOver callback (REQUIRED)         out: function() { $('#info').remove();  } // function = onMouseOut callback (REQUIRED)     }     $('#container a').hoverIntent(hiConfig)}
查看完整描述

3 回答

?
慕虎7371278

TA貢獻1802條經(jīng)驗 獲得超4個贊

您需要在懸停時檢查計時器。如果它不存在(即這是第一個懸停),請創(chuàng)建它。如果它存在(即這不是第一個懸停),請將其刪除并重新啟動它。將計時器有效負載設(shè)置為您的代碼。

$(function() {
    var timer;

    $('#container a').hover(function() {
        if(timer) {
            clearTimeout(timer);
            timer = null
        }
        timer = setTimeout(function() {
            $('<div id="fileinfo" />').load('ReadTextFileX.aspx',
                {filename:'file.txt'},
                function() {
                    $(this).appendTo('#info');
                }
            );
        }, 500)
    },
    // mouse out
    });});

我敢打賭jQuery有一個功能可以為你完成這一切。


查看完整回答
反對 回復(fù) 2019-08-27
?
墨色風(fēng)雨

TA貢獻1853條經(jīng)驗 獲得超6個贊

完全同意hoverIntent是最好的解決方案,但如果你碰巧是一個不幸的草皮,他在一個網(wǎng)站上工作,有一個漫長而漫長的過程來批準jQuery插件,這里有一個快速而骯臟的解決方案,對我來說很有用:

$('li.contracted').hover(function () {
    var expanding = $(this);
    var timer = window.setTimeout(function () {
        expanding.data('timerid', null);

            ... do stuff    }, 300);
    //store ID of newly created timer in DOM object
    expanding.data('timerid', timer);}, function () {
    var timerid = $(this).data('timerid');
    if (timerid != null) {
        //mouse out, didn't timeout. Kill previously started timer
        window.clearTimeout(timerid);
    }});

這個只是用于擴展<li>如果鼠標已經(jīng)超過300毫秒。


查看完整回答
反對 回復(fù) 2019-08-27
  • 3 回答
  • 0 關(guān)注
  • 542 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號