jQuery:重构为函数

jQuery: Refactoring into functions

本文关键字:函数 重构 jQuery      更新时间:2023-09-26

我在摆弄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 */
  });
}

但点击时似乎不会触发

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

非常感谢,PlankTon

var callback = function() {};
$('#a-div-element').click( callback );

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

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

只需定义并重用一个事件处理程序函数。

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