jquery:多次绑定事件后会发生什么?

hpa*_*nia 5 jquery triggers

感谢jQuery,.on方法将触发器绑定到元素.我有一个像:

<div class='xyz'>click me</div>
Run Code Online (Sandbox Code Playgroud)

和脚本如:

$('.xyz').on('click', function(){   alert('why?'); });
$('.xyz').on('click', function(){   alert('why?'); });
Run Code Online (Sandbox Code Playgroud)

点击我点击 div触发警报2次.没关系,但是:

  1. 将第二次点击触发器绑定到div后到底发生了什么?
  2. 它是一个浏览器行为还是由jquery变量完成的?

这是小提琴:http: //jsfiddle.net/hpmhpm/FCReC/

Moh*_*dil 4

将第二次单击触发器绑定到 div 后到底会发生什么?

Jquery 在 上注册一个新的单击事件处理程序.xyz,无论有多少事件处理程序已经附加到您的元素

这是浏览器行为还是由 jquery 变量完成的?

它是由 jquery 完成的


您可以在同一元素上拥有任意数量的事件处理程序,请考虑一个场景 -

这是完全有效的:

$('.xyz').on('click', function(){   // do some work });
$('.xyz').on('click', function(){   // do some other work });
Run Code Online (Sandbox Code Playgroud)