1

我有这个代码:

$('#email').keyup(function() {
            if(true || false)) {

            } else {

            }
        });

我还需要在模糊事件中包含此功能。

我试图创建一个 jquery 函数,但我做不到。有人给我一盏灯。

4

4 回答 4

5

你可以这样做 -

$('#email').on('keyup blur',function() {
于 2013-06-11T09:13:54.647 回答
2

使用该on方法附加多个事件,这些事件在传递给函数的第一个参数中指定。

$('#email').on('keyup blur', function() {
    if(true || false) {  //there was an extra ) here

    } else {

    }
});

工作示例 http://jsfiddle.net/nv39M/

需要注意的一件事是,keyup事件将在blur事件触发之前触发。

于 2013-06-11T09:14:11.740 回答
1

做一个单独的函数如下

function funcName(){
//Your code
}

现在,使用 jQuery

 $("#email").on("keyup",funcName);
 $("#email").on("blur",funcName);

供参考,检查

http://api.jquery.com/on/

于 2013-06-11T09:19:03.190 回答
1

有(至少)两种方法可以实现这一目标。

  1. 指定多个空格分隔的事件作为第一个参数:

    $('#email').on('keyup blur',function() {
        // your logic
    });
    
  2. 使用命名函数:

    function yourFunction() {
        // your logic
    }
    
    $('#email').on('keyup', yourFunction);
    $('#email').on('blur', yourFunction);
    

假设您不想在其他任何地方使用该函数,并且您想同时绑定事件处理程序,选项 1 可能是最佳选择。但是,如果您想blur在以后绑定事件(可能是为了响应另一个事件),或者绑定到不同的元素,那么命名函数方法将是最佳选择。

于 2013-06-11T09:17:39.480 回答