浏览器对JQUERY多次绑定CLICK事件的影响

近期从同事手里接过来的项目,是用JQUERY来做的,以达到页面不刷新的效果.后来,发现前面做的有些页面还是没达到预期效果.特别是一些组件都没有抽取出来,于是,就开始抽取公用组件.

其中有一个分页组件,因为在点击分页按钮时,需要触发不同的请求事件,于是,就传入具体的事件:

myself.preBtn.click(function(){
			myself.configs.curPageNum = 1;
		});
		myself.preBtn.click(callback);
		myself.preBtn.click(function(){
			myself.configs.curPageNum = 1;
			myself.pageTxt.val(myself.configs.curPageNum);
			$(this).attr('disabled',true);
			myself.nextBtn.attr('disabled',false);
			myself.endBtn.attr('disabled',false);
		});

 这种方式在火狐上是没问题的,火狐浏览器按顺序逐个触发.但在IE上却是先触发myself.preBtn.click(callback);这样就导致分页出现问题.最后修改为:

myself.preBtn.click(function(){
			myself.configs.curPageNum = 1;
            if(callback)
                callback();
			myself.pageTxt.val(myself.configs.curPageNum);
			$(this).attr('disabled',true);
			myself.nextBtn.attr('disabled',false);
			myself.endBtn.attr('disabled',false);
		});

相关推荐