切换功能需要2次点击

时间:2012-01-09 02:28:05

标签: jquery

我有一系列按钮。让我们称它们为A,B,C。我将切换方法附加到这些按钮上。当我单击A时,将显示带有一些信息的div。如果我再次单击A,则此div将被删除。当我单击B时,删除与A相关的div [如果仍然打开],则显示与B相关的新div。这只是我们在许多网站上看到的基本切换。

但是,当我单击A,然后再单击B然后再单击A时,A将单击2次以显示其div。那是因为切换中的第二个功能是因为它仍在队列中而被触发。

看看这段代码。我只是在这里更改按钮的文本以进行演示。

http://jsfiddle.net/BxFqf/

如何防止它点击2次?

3 个答案:

答案 0 :(得分:0)

那是因为.toggle保持您正在切换的项目的状态,并且不同按钮的状态不相关

答案 1 :(得分:0)

使用toggle这样的“天真”使用,你将无法达到理想的行为。你需要做的是“记住”每个按钮的状态,这样你就可以在点击时做出相应的反应。由于反应几乎总是涉及应用样式,因此使用HTML类也是记住状态的好选择(您可以重用该类进行样式化)。

查看示例here

答案 2 :(得分:0)

您需要将单击事件绑定到按钮并相应地更改文本,而不是使用切换。我会用.each()