1

我有一个脚本:

 $('#subButton').click( function (){
  // do function stuff
  });

我希望能够让 2 个侦听器运行相同的功能。如果没有两次编写所有“做功能的东西”,我怎么能做到这一点,要做的事情很多。侦听器在一个实例中单击,而在另一个实例中更改...

基本上我想用外行的话做这样的事情:

 $('#subButton').click OR $('#search').change ( function (){
 // do function stuff
 });
4

3 回答 3

2

您可以使用逗号组合选择器。

  $('#subButton, #search').click(function (){
             // do function stuff
   });

根据您的更新。您可以在单独的函数中编写处理程序,并为它们提供相同的函数引用。

   function handler(){
       // do function stuff
   } 

   //...

   $('#subButton').click(handler);
   $('#search').change(handler);
于 2013-10-16T16:16:47.327 回答
1

您可以将处理程序编写为单独的函数,然后使用处理程序引用来注册两个处理程序

function handler(){
}

$('#subButton').click (handler);
$('#search').change (handler);
于 2013-10-16T16:16:05.087 回答
1

创建一个函数并在需要时使用它:

var fn = function (){
   //do function stuff
};

$('#subButton').click(fn);
$('#search').change(fn);
于 2013-10-16T16:18:13.610 回答