jQuery toggle()没有动画但function齐全?

我试图在没有动画的情况下切换元素的可见性,但是使用完整的函数以便我更改启动切换的链接的文本。

jQuery('.toggle_tags').click(function(){ var elem = jQuery(this); jQuery('#taglist').toggle({complete: function() { if (jQuery(this).is(':visible')) { elem.text('(Hide Tags)'); } else { elem.text('(View Tags)'); } },}); return false; }); 

不幸的是,这仍然在触发动画。 没有任何参数,切换不会动画,但即使通过只传递一个函数或完整的函数(如上所述),我仍然得到动画。

任何建议?

不要使用completefunction。

如果没有参数, .toggle()将同步运行,这意味着您可以只测试它在下一个语句中所执行的操作,知道它已经完成,您可以使用:

 jQuery('#taglist').toggle(); if (jQuery('#taglist').is(':visible')) { elem.text('(Hide Tags)'); } else { elem.text('(View Tags)'); } 

尝试将duration: 0添加到选项对象。 更多信息在文档中