
1 reus 2011 年 7 月 23 日 “只触发其中一个事件,两个方法都要有”什么意思? 如果想顺序可以用queue机制 |
2 sparklo 2011 年 7 月 23 日 click事件只有一个, 你不加条件判断怎么可能想让他区别两种回应呢? |
3 chone 2011 年 7 月 23 日 在不需要的触发的时候删除掉handler var handlerA = function() {alert('a');}; var handlerB = function() {alert('b');}; var btn = $("btn1"); // fire a btn.bind('click', handlerA); // fire b btn.unbind('click', handlerA); btn.bind('click', handlerB); 或者加一个条件变量,当'click'事件被触发的时候再判断是否执行handler var fireA = true; var handlerA = function() {if (!fireA) return; alert('a');}; var handlerB = function() {fi (fireA) return; alert('b');}; // fire handler b fireA = false; |
4 avatasia OP |
5 ashchan 2011 年 7 月 23 日 如果你只是想让每次点击时,只响应两个回调中的一个(换句话说两个方法轮流执行),那么只要用toggle就行: $("#btn1").toggle(function(){ /*handler 1*/ }, function(){ /*handler 2*/ }); |
6 yangg 2011 年 7 月 23 日 $("#btn1").click(function(e){ alert('a'); e.stopImmediatePropagation(); }); |