jQuery:重构为函数

时间:2012-09-11 01:16:56

标签: javascript jquery refactoring

我正在搞乱JavaScript / jQuery,并试图确定如何重构两个非常相似:

 $('#a-div-element').click(function() {
    /* common stuff in here */
})

带有两个参数的一个函数。我希望它与我使用的其他语言有点相似,即:

function my_refactored_stuff(field, target_div) {
  $(field).click(function{ 
    /* common stuff in here */
  });
}

但点击

时似乎没有触发

简而言之,如果有人可以快速举例说明如何编写一个处理.click方法中常见功能的函数,我会非常感激

非常感谢,              浮游生物

2 个答案:

答案 0 :(得分:2)

只需定义并重用事件处理函数。

var handler = function(event) { /* common stuff here */ }
$("#a-div-element").on("click", handler)
$("#b-div-element").on("click", handler)

答案 1 :(得分:1)

var callback = function() {};

$('#a-div-element').click( callback );

或者如果你想传递参数:

$('#a-div-element').click(function() {
    callback( /* args */ );
});