jQuery.toggle - 在备用点击上执行两个或多个处理程序

时间:2015-01-13 10:34:02

标签: javascript jquery

我有一个按钮可以启用编辑模式:显示一些#edit_bar并启用.selectable()

$('#edit_mode').click(function() {
  $('#edit_bar').slideToggle("slow", function() {
    $('#foo').selectable("enable");
  });
});

我想在第二次点击按钮时禁用.selectable()(关闭编辑模式)。

我想知道最好的方法。有.toggle()方法可以做到这一点,但它现在被一些非常不同的东西所取代。

1 个答案:

答案 0 :(得分:1)

为此设置标志怎么样?它会设置一个切换效果,以便每次调用click函数时都会检查该标志并执行相应的功能:

var flag = true;
$('#edit_mode').click(function() {
  $('#edit_bar').slideToggle("slow", function() {
  if(flag == true) {
       $('#foo').selectable("enable");
       flag = false;
    }
    else {
       $('#foo').selectable("disable");
       flag = true;
    }
  });
});