jQuery .is(':hover')总是返回false?

时间:2014-06-03 19:32:03

标签: javascript jquery css hover jquery-hover

我正在制作一个下拉菜单。 当你的鼠标没有徘徊在按钮或菜单本身时,我制作了一个淡出菜单的脚本。

但它不起作用。当我检查它的悬停与否时,他总是返回假。这是mu jQuery:

$( document ).ready(function() {
$( ".cats" ).click(
    function() {
        if ($( ".drop" ).css('display') != 'none'){
            $( ".drop" ).fadeOut(250);
            clearHoverTick();
        } else {
            $( ".drop" ).fadeIn(250);
            setHoverTick();
        }
    }
);

});

var hoverTick = null;
function setHoverTick() {
    hoverTick = setInterval(function() {
        if(!$(".drop").is(':hover') && !$(".cats").is(':hover')) {
            $( ".drop" ).fadeOut(250);
            var hovered = $('.cats').is(':hover');
            console.log(hovered);
            clearHoverTick();
        }
    }, 20);
}

function clearHoverTick() {
    clearInterval(hoverTick);
    hoverTick = null;
}

请帮帮我?

0 个答案:

没有答案