【发布时间】:2012-02-19 23:16:47
【问题描述】:
我注意到建议use named functions when binding an event handler to a javascript event。当我的函数需要传递this 对象时,我该怎么做?
例如,我如何通过直接调用doFancyStuff来替换下面的匿名函数:
$(document).on('change', 'input.fancy-textbox', function () {
doFancyStuff($(this));
});
function doFancyStuff($textbox) {
// fanciness
}
如果您指出我可能会违反上述代码的其他约定,请加分。
为了澄清,我想在我的示例中从多个地方调用doFancyStuff() 方法,否则是的,我可以这样做:
$(document).on('change', 'input.fancy-textbox', doFancyStuff);
function doFancyStuff() {
var $textbox = $(this);
// fanciness
}
【问题讨论】:
标签: javascript jquery coding-style