Jquery 回调函数的问题

Jquery 回调函数的问题,jquery,Jquery,下面的网站运行良好,但是当我点击导航标签淡入淡出相对内容时,页脚也淡入淡出,我不希望发生这种情况 链接到工作站点: 所有这些都发生在页眉和页脚之间,也许我的jQuery中有问题,页脚不会褪色。它被向下推到视图下方,因为在动画期间,两个内容div(淡出和淡入)都可见 你应该做的只是在旧内容完全消失后,在新内容中淡入淡出 您的缺陷是使用了h_cl,这会快速触发回调,因为您隐藏了已经隐藏的元素 试试这个: h_cl.filter(':visible').fadeOut(... 这将确保您只淡入可见元

下面的网站运行良好,但是当我点击导航标签淡入淡出相对内容时,页脚也淡入淡出,我不希望发生这种情况

链接到工作站点:


所有这些都发生在页眉和页脚之间,也许我的jQuery中有问题,页脚不会褪色。它被向下推到视图下方,因为在动画期间,两个内容div(淡出和淡入)都可见

你应该做的只是在旧内容完全消失后,在新内容中淡入淡出

您的缺陷是使用了h_cl,这会快速触发回调,因为您隐藏了已经隐藏的元素

试试这个:

h_cl.filter(':visible').fadeOut(...

这将确保您只淡入可见元素,只有在它真正消失后才会触发回调。

您还需要显示(相关)HTML。看起来您的页脚只是向下弹并备份,而不是淡入/淡出很难看到页脚中发生了什么。我的屏幕不够大。@AlexRichards是的,就是这样,但我不希望发生这种情况。只是有文本的内容区域需要淡出和淡入,页脚需要保持在原来的位置,但是回调是否应该在开始另一个操作之前完成一个操作?好吧,现在清楚了,我没有意识到这一点(正如您所说)我正在隐藏一些已经隐藏的内容,有没有更好的方法呢?通常会给当前可见的元素指定一个“active”或“selected”类,然后使用该类在淡出中进行选择。这种方法可以使用:$('.contentDiv.selected').fadeOut(…只要确保在淡入时将所选类移动到新div即可
h_cl.filter(':visible').fadeOut(...