Jquery 解除绑定<;李>;单击后,需要时再次绑定

Jquery 解除绑定<;李>;单击后,需要时再次绑定,jquery,list,live,bind,unbind,Jquery,List,Live,Bind,Unbind,我正在创建一个下拉列表。当你点击“联系人”时,一个巨大的联系人框下来了。当我点击“关闭”时,它消失了。此功能可以正常工作 我需要的是在表单打开后取消绑定列表项,但一旦关闭,请再次启用它 代码如下 jQuery(document).ready(function() { jQuery("#header ul.menu li:last-child").addClass("open"); jQuery("#header ul.menu li.open").click(function() {

我正在创建一个下拉列表。当你点击“联系人”时,一个巨大的联系人框下来了。当我点击“关闭”时,它消失了。此功能可以正常工作

我需要的是在表单打开后取消绑定列表项,但一旦关闭,请再次启用它

代码如下

jQuery(document).ready(function() {

 jQuery("#header ul.menu li:last-child").addClass("open");

 jQuery("#header ul.menu li.open").click(function() {

  jQuery(this).unbind("click");

  jQuery("#contact").animate({marginTop:'+=426px'}, 2000);

  return false;

 });

 jQuery("#contact a#close").click(function() {

  jQuery("#contact").animate({marginTop:'-=426px'}, 2000);

  jQuery("#header ul.menu li:last-child").live("click", function() {

  });

  return false;

 });

});

您应该指定对
.unbind()
/
.bind()
的函数引用

function click_handler() { 
    // do something
}

jQuery("#header ul.menu li.open").click(function() {
   jQuery(this).unbind("click", click_handler);

   jQuery("#contact").animate({marginTop:'+=426px'}, 2000);

   return false;
});

// some code

jQuery("#header ul.menu li.open").bind('click', click_handler);