如何点击任何元素的类

时间:2014-07-23 10:32:25

标签: jquery

我试图获取点击文档的任何元素的类(如果已设置),这可能吗?我试过了:

$(document).on('click', function() {            
        var itemClass = $(this).attr('class');          
        if(typeof(itemClass) != "undefined" && itemClass !== null) {
            console.log('The item has class of:' + itemClass);
        } else {
            console.log('undefined or null');   
        }
    });

无论我点击什么元素,控制台中的结果总是如下:     undefined或null

3 个答案:

答案 0 :(得分:2)

尝试使用event.target属性

$(document).on('click', function(e) {
   var itemClass = e.target.className;
   // rest of your code goes here

注意:如果没有使用点击的元素设置类,则会返回undefined

答案 1 :(得分:1)

您可以使用event objecttarget属性来获取启动该事件的实际元素。

下面将获得与被点击元素相关的具有class属性的最接近元素。

$(document).on('click', function (e) {

    var itemClass = $(e.target).closest('[class]').attr('class');

    if (typeof (itemClass) != "undefined" && itemClass !== null) {
        console.log('The item has class of:' + itemClass);
    } else {
        console.log('undefined or null');
    }
});

答案 2 :(得分:1)

$(document).on('click', function(e) {
   var itemClass = e.target.className;
    alert(itemClass);
});