fadeOut没有触发后的jQuery回调

时间:2011-03-03 13:56:05

标签: jquery hoverintent easing

我还在学习jQuery / javascript,所以非常感谢任何指针和改进。

我想在fadeOut事件的回调函数中隐藏div,但这不起作用。我写这篇文章的方式有什么不妥。

function hide() {
    var box = $(this);
    box.children("div").children().fadeOut(500, function() {
        $(this).parent().hide("slow", "easeOutBounce");
    });
};

我正在使用EasingHoverIntent jquery插件。

Example of my problem

3 个答案:

答案 0 :(得分:4)

回调正在解决,问题是隐藏了包含链接的<div>,然后您调用slideUp()。但是当<div>被隐藏的那一刻,包含div的高度就像它已经完成滑动一样 - 所以你称之为向上滑动没有数量。

解决方法是几乎 fadeOut()链接,然后滑动(因为它们没有完全消失,它们仍然有高度),然后完全隐藏它们。

工作示例:

http://jsfiddle.net/scFMx/13/

答案 1 :(得分:1)

看起来像是在解雇

box.children("div").children().fadeOut(500, function() {
    console.log($(this).parent().clone());
    $(this).parent().hide();
    console.log($(this).parent());
});

首先调用log:

<div class="hidden" style="display:block; ">…</div>

第二次调用日志:

<div class="hidden" style="display:none; ">…</div>

答案 2 :(得分:0)

尝试通过指定ID替换所有“this”。