Jquery - 切换问题

时间:2011-03-07 09:00:30

标签: jquery toggle

我有这个切换功能

$('#togglebtn').toggle(function() {
 $('#panel').show();
}, function() {
 $('#panel').hide();
});

我还有另一个关闭/隐藏面板的按钮

$('#otherbtn').click(function() {
 $('#panel').hide();
});

我想说的是,当我使用#otherbtn隐藏面板时,#togglebtn上的事件仍处于活动状态,并且会给我一个额外的点击以再次开始切换面板。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:5)

您要执行的操作已通过其他.toggle()功能提供。只需将其绑定到click事件:

$('#togglebtn').click(function() {
    $('#panel').toggle()
});

(而不是$('#togglebtn').toggle(...)

答案 1 :(得分:0)

$('#otherbtn').click(function() {
 $('#panel').hide();
$('#togglebtn').toggle(function() {
 $('#panel').hide();
}, function() {
 $('#panel').show();
});

});

应该有效。扭转了' otherbtn'

的切换行为

答案 2 :(得分:0)

在切换按钮上触发点击事件。

$('#otherbtn').click(function() {
 $('#panel').hide();
 $('#togglebtn').click(); //resets tooglebtn state
});