2013-01-01 53 views
-6

可能重复:
Switch divs off/on打开Div的开或关

首先,我意识到,我以前问过这个问题,但我没有找到一个很好的回应,所以我想第二次幸运!

我有这些div(,它们的工作方式类似于按钮),我希望能够在我选择时打开/关闭。

这是我的尝试,但很明显,一旦div被关闭,它不能再次打开。

FIRST,

$("#num-one").off(); 
    $("#num-two").off(); 
    $("#num-three").off(); 

再后来,

$("#num-one").on(); 
    $("#num-two").on(); 
    $("#num-three").on(); 

这些都是我的功能:

$("#numOne").click(function(){ 
     doSomething(); 
    }); 

$("#numTwo").click(function(){ 
     doSomething(); 
    }); 

$("#numThree").click(function(){ 
     doSomething(); 
    }); 

这些功能应该工作 - 但他们应该能够停止工作有时候 - 我想 - 禁用了,并在某个时间后重新启用。 实现这一目标的另一种方式是什么?

新年快乐!

+3

请勿反复张贴同样的问题。如果你没有得到一个好的答案,请按照常见问题中的建议(http://stackoverflow.com/faq#bounty)。 – Jim

+0

好的 - 也请注意,吉姆,我不否认它是类似于开关div关/在 – JoseBazBaz

+0

米( 请,请...阅读http://api.jquery.com/on/,http:/ /api.jquery.com/off/和http://api.jquery.com/click/。 'on'和'off'方法不会改变你的按钮的状态。 你应该这样做。属性'disabled'或'readonly' 要绑定一些事件,以您的按钮只写 $( '#numOne')。在( '点击',函数(){ DoSomething的(); }); 这将'doSomething'功能绑定到他们。 要启用/禁用您的按钮,只需尝试 $('#numOne').attr('disabled','disabled'); 将属性'disabled'设置为'disabled'。 – bukart

回答

2

Off()删除事件处理程序。如果您想重新添加处理程序,则必须将处理程序传递给on()方法。

$("#num-one").on("click", doSomething); 
$("#num-one").off(); 
$("#num-one").on("click", doSomething); 

// a bit cleaner 
var button = $("#num-one"); 

button.click(doSomething); 
button.off(); 
button.click(doSomething); 
0

可以写这样的:

$("#num-one,#num-two,#num-three").off('click'); 

$("#num-one,#num-two,#num-three").on('click',doSomething);