开/关单击jQuery

时间:2016-03-04 08:46:35

标签: jquery

我使用off()来禁用click div但我无法使用on()

打开它

这是我的jQuery代码:

$("div").off("click");
do something.......
$("div").on("click");

请告诉我原因?谢谢你。

2 个答案:

答案 0 :(得分:1)

对于official jQuery reference.on()函数需要event(即"点击")和handler(即doSomething)。

$("div").on("click", functionToCallWhenClicked);

修改1:

至于您的评论,您可以通过以下其他方式附加点击事件:

  • 通过.bind()

    $(" DIV&#34)。绑定("单击",functionToCallWhenClicked);

  • 通过.click()

    $(" DIV&#34)。单击(functionToCallWhenClicked);

  • 通过native JavaScript

    var y = document.getElementsByTagName(" div"); var i; for(i = 0; i< y.length; i ++){     y [i] .addEventListener("点击",functionToCallWhenClicked); }

答案 1 :(得分:0)

您可以为处理程序定义一个函数,将其传递给off以禁用它,将另一个函数传递给one以启用它。

您有一个关于jQuery documentation

add and remove event handlers on the colored button的方法的示例
function flash() {
  $( "div" ).show().fadeOut( "slow" );
}
$( "#bind" ).click(function() {
  $( "body" )
    .on( "click", "#theone", flash )
    .find( "#theone" )
      .text( "Can Click!" );
});
$( "#unbind" ).click(function() {
  $( "body" )
    .off( "click", "#theone", flash )
    .find( "#theone" )
      .text( "Does nothing..." );
});