1

我在搞乱 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 方法的常见功能的函数,我将非常感激

非常感谢, PlankTon

4

2 回答 2

2

只需定义和重用一个事件处理函数。

var handler = function(event) { /* common stuff here */ }
$("#a-div-element").on("click", handler)
$("#b-div-element").on("click", handler)
于 2012-09-11T01:19:20.630 回答
1
var callback = function() {};

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

或者,如果您希望传递参数:

$('#a-div-element').click(function() {
    callback( /* args */ );
});
于 2012-09-11T01:24:36.190 回答