Вы должны передать обратный вызов, чтобы связать, он ничего не помнит, как только он не связан.То есть, когда вы снова указали привязку в # activ.click, вам нужно будет указать функцию там.Вероятно, лучший способ сделать это - указать функцию else где и использовать ее для вызова bind.В приведенном ниже примере я использую jquerys .data для сохранения функции в «clickFunc», а затем использую ее в качестве обратного вызова для .click.Вы также можете просто использовать переменную.
$(document).ready(function(){
$("#package").data('clickFunc', function () {
alert("Click");
$(this).unbind('click');
})
console.log($('#package').oclick);
$("#package").click($('#package').data('clickFunc'));
$('#activate').click(function(){
$("#package").click($('#package').data('clickFunc'));
// the rest of the code
});
});
http://jsfiddle.net/nj65w/13/