我有一些应该在
上发生的行动$('input').change(function () {
...
}
但也在
$( document).ready(function() {
...
});
是否可以将这些功能组合成一个类似
的功能$( document).ready || $('input').change(function() {
...
});
答案 0 :(得分:4)
您可以将处理程序的逻辑提取到自己的函数中,然后在两个事件下调用它,如下所示:
function myFunc() {
console.log('do something useful here...');
}
$(function() {
myFunc(); // on load
$('input').change(myFunc); // on input change
});
答案 1 :(得分:3)
首先,创建执行您需要它执行的操作的函数:
var doSomething = function() {
//...
};
然后将其添加到事件处理程序中。像这样:
$(document).ready(doSomething);
$('input').change(doSomething);
或者,如果后者也需要在ready
处理程序中发生:
$(document).ready(function () {
doSomething();
$('input').change(doSomething);
});
无论如何,这种关注点的整体分离将有助于组织代码。保持逻辑操作(doSomething
)与UI绑定(事件处理程序)分开。