2010-06-23 74 views
0

我试图开发一个jQuery手风琴,目前为止工作情况还不错,考虑到我并不真正了解jQuery。jQuery手风琴无法禁用点击仍然动画时?

我所遇到的主要问题是,如果您在不同的部分快速点击相关内容,它会在短时间内敲出整个手风琴,这实在不够好。

我试图把

如果($( “#手风琴UL李”)为( ':动画')){

周围的点击功能,但似乎并没有做任何事情,任何人都可以伸出援助之手,或告诉我至少可能吗?

另外你会注意到,当点击时,手风琴的右侧缩小了一点,这是可以修复的还是我不得不忍受的事情?

您可以查看我在这里的意思是提前为任何帮助http://dev.boomeranginternet.co.uk/accordion/accordion1.asp

感谢。

问候, J.

回答

0

通过把周围的点击功能,你的意思是这样的吗?

if ($("#accordion ul li").is(":animated")) { 

    } else { 
     $("#accordion ul li").click(function() { 
      // do animation 
     }): 
    } 

多数民众赞成在错误的方式,点击功能定义一个事件处理程序。如果您希望动画 只在没有其他动画运行的情况下才运行,您必须在您的事件处理程序中检查

$("#accordion ul li").click(function() { 
    if ($("#accordion ul li").is(":not(animated)")) { 
     // do animation 
    } 
}): 
+0

感谢您的答复。 我得到一个语法错误:旁边没有这个。 – JBoom 2010-06-23 09:13:45

+0

@JBoom sry我错过了双引号,现在的语法应该是正确的 – 2010-06-23 09:24:38

+0

谢谢marc,非常感谢。 – JBoom 2010-06-23 09:36:15

2

尝试是这样的insted的:

$("#accordion ul li").click(function(){ 
    if ($(':animated').length) { 
     return false; 
    } 

    //Your code goes here... 
}); 
+0

非常感谢,似乎已经做到了! 我已重新加载文件,以防您感兴趣。 还有任何想法在宽度略有减少(你可以注意到它在右侧)而动画? 再次感谢。 – JBoom 2010-06-23 09:17:15