Javascript 同一元素和事件中的多个函数

Javascript 同一元素和事件中的多个函数,javascript,jquery,dom,Javascript,Jquery,Dom,如果我在一个元素中向同一个事件添加多个函数,会发生什么 举例来说: jQuery('#searchButton').click(function(){ /* logic 1 */ ); jQuery('#searchButton').click(function(){ /* logic 2 */ ); 添加到事件中的第一个函数始终是第一个被调用的函数 所有浏览器都支持这种类型的东西吗 函数是异步调用的吗 谢谢总是绑定到元素事件的第一个函数将首先被调用吗 来自jQuery文档的报价 如果注册了多

如果我在一个元素中向同一个事件添加多个函数,会发生什么

举例来说:

jQuery('#searchButton').click(function(){ /* logic 1 */ );
jQuery('#searchButton').click(function(){ /* logic 2 */ );
  • 添加到事件中的第一个函数始终是第一个被调用的函数
  • 所有浏览器都支持这种类型的东西吗
  • 函数是异步调用的吗

  • 谢谢

    总是绑定到元素事件的第一个函数将首先被调用吗

    来自jQuery文档的报价

    如果注册了多个处理程序,它们将始终按照绑定顺序执行

    参考文献


    它们是按绑定顺序执行的。以下是jquery快速入门书的摘录:


    只是想指出一些其他答案尚未给出的东西:jQuery确实保证了事件将按照添加顺序触发(正如John Hartsock的答案中所引用的那样),方法是只将一个事件处理程序绑定到任何给定元素,并保存一个绑定的内部函数数组(它还有一个额外的优点,就是可以删除匿名函数,否则你就不会有对匿名函数的引用)

    但是,如果您将其与任何其他库混合使用或直接使用DOM,则没有任何保证。该标准不要求实现遵循任何顺序,因此,尽管许多实现在内部实现了一个不保证的FIFO结构