我试图获取点击文档的任何元素的类(如果已设置),这可能吗?我试过了:
$(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
答案 0 :(得分:2)
尝试使用event.target
属性
$(document).on('click', function(e) {
var itemClass = e.target.className;
// rest of your code goes here
注意:如果没有使用点击的元素设置类,则会返回undefined
。
答案 1 :(得分:1)
您可以使用event object的target属性来获取启动该事件的实际元素。
下面将获得与被点击元素相关的具有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);
});