當你bind
解除綁定後,它沒有任何的previous handler.
信息的事件所以,你需要分配處理器every time you bind the event
。
$(".class1 a, .class2 a").bind(handler);
$(".trigger").click(function(){
$(".class1 a, .class2 a").unbind();
$('html, body').stop()
.animate({scrollTop: $('#container')
.offset().top}, 1000);
$(".class1 a, .class2 a").bind(handler);
});
function handler(e){
alert('Hey !!');
}
還可以使用.on() /.off()
代替.bind()/.unbind()
因爲前者已經被後來superseeded ..
$(".trigger").on('click', function(){
$(".class1 a, .class2 a").off('click');
$('html, body').stop()
.animate({scrollTop: $('#container')
.offset().top}, 1000);
$(".class1 a, .class2 a").on('click' , handler);
});
function handler(e){
alert('Hey !!');
}
'bind()'什麼?它不知道你想要添加什麼,你需要告訴它! – epascarello