7
var config = {    
     sensitivity: 3,    
     interval: 5000,     
     timeout: 5000,    
};

$("#cart-summary").hoverIntent(function () {
        $('.flycart').slideDown('fast');
}, function() {
        $('.flycart').slideUp('fast');
}).find('a.close').click(function(){
   $(this).parents('.flycart').hide();
});

...これは機能しますが、2つの問題があります。

  1. 本来のように5秒待たないようで、何を設定してもほぼ瞬時に開きます。

  2. 同じページでhoverintentプラグインを使用するすべての要素に影響します。

助けていただければ幸いです。ありがとう!

4

2 に答える 2

8

構成オブジェクトを hoverIntent に渡していないため、デフォルトを使用しています: http://cherne.net/brian/resources/jquery.hoverIntent.html

明確にするために、

var config = {
     sensitivity: 3,
     interval: 5000,
     timeout: 5000
};

$("#cart-summary").hoverIntent(function () {
    $('.flycart').slideDown('fast');
}, function() {
    $('.flycart').slideUp('fast');
}).find('a.close').click(function () {
    $(this).parents('.flycart').hide();
}, config);
于 2009-10-02T17:23:46.993 に答える
2

こっちの方がわかりやすいかも

function liMouseOverTrigger() {
    $(this).addClass('hover');
}

function liMouseOutTrigger() {
    $(this).removeClass('hover');
}

function tabHoverDelay() {

        var config = {
            sensitivity: 1,
            interval: 100,
            timeout: 400,
            over: liMouseOverTrigger,
            out: liMouseOutTrigger
        },
            config2 = {
                sensitivity: 1,
                interval: 350,
                timeout: 600,
                over: liMouseOverTrigger,
                out: liMouseOutTrigger
            };


        $('.js-navTabHover li').each(function () {
            $(this).hoverIntent(config);
        });

        $('.js-navTabHoverContent li').each(function () {
            $(this).hoverIntent(config2);
        });

    }

$(document).ready(function () {
    tabHoverDelay();
});
于 2014-09-03T09:20:44.803 に答える