如何将输入更改功能与文档就绪功能相结合?

时间:2016-02-29 11:54:59

标签: jquery

我有一些应该在

上发生的行动
$('input').change(function () {
...
}

但也在

$( document).ready(function() {
 ...
});

是否可以将这些功能组合成一个类似

的功能
$( document).ready  || $('input').change(function() {
  ...
});

2 个答案:

答案 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绑定(事件处理程序)分开。