jQuery Unbind()函数中的所有东西?

时间:2011-07-28 05:58:43

标签: jquery events unbind

所以我有一个像

这样的功能
function onLoadMe() {
 //stuff in function
}

第二个功能

function onLoadMeSecond() {
     //stuff in function
    }

我想尝试在页面加载上绑定onLoadMe(),但是然后取消绑定onLoadMe()中的所有内容并为元素加载第二个函数onLoadMeSecond()

jQuery('#some-id').click(function() {
   jQuery(this).unbind(onLoadMe());
   onLoadMeSecond();
});

我怎么能这样做,因为以上不起作用?

修改:参见示例http://jsfiddle.net/cer9R/5/

3 个答案:

答案 0 :(得分:1)

正确的语法是$(window).unbind('load',onLoadMe)

虽然在JsFiddle示例中,您正在绑定文档就绪的处理程序,而不是页面加载。要取消绑定,您可以使用$(document).unbind('ready')。当然,使用文档就绪事件来绑定一个单击处理程序,它将取消绑定(已经完成的)文档就绪处理程序,这根本没有任何意义。

答案 1 :(得分:0)

你试过这样的写作吗?

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

或者只是这个

 jQuery(this).unbind();

答案 2 :(得分:0)

从unbind参数中删除()

jQuery('#some-id').click(function() {
   jQuery(this).unbind(onLoadMe);
   onLoadMeSecond();
});

onLoadMe 而不是onLoadMe()