在keyup或click上获取此元素

时间:2013-02-02 00:10:54

标签: jquery click keyup

我想知道哪个元素已被点击或键入。如下所示:

$('button, input').on('click keyup', function() {

    var self = $(this);

    if (self == button)
        ...
    else if (self == input)
        ...

};

我无法执行self.attr('name') == 'something',因为该按钮没有名称属性。

2 个答案:

答案 0 :(得分:1)

if ($(this).is('button')) {
} else if ($(this).is('input')) {
}

意味着什么?

if ($(this).prop('tagName')=='BUTTON'){
} else if ($(this).prop('tagName')=='INPUT') {
}

虽然我会使用开关因为它更整洁

switch ($(this).prop('tagName')){
    case 'BUTTON':
        //do stuff
    break;
    case 'INPUT':
        //do stuff
    break;
}

答案 1 :(得分:0)

如果你想区分它是输入还是按钮标签,你可以使用

$(this).prop("tagName")