在JavaScript中,你可以通过元素的className
和id
属性来获取一个元素的所有class和id。但需要注意,className
返回的是一个包含所有class名的字符串,而不是一个数组。如果你需要一个数组,你需要自己进行分割。
以下是一个简单的函数,它接受一个元素作为参数,并返回一个对象,该对象包含该元素的所有class(作为数组)和id:
function getElementClassesAndId(element) {// 初始化返回的对象let result = {classes: [],id: ''};// 检查元素是否存在if (!element) {console.error('No element provided');return result;}// 获取并设置idresult.id = element.id;// 获取并设置classes。使用split(' ')将className字符串分割为数组if (element.className) {result.classes = element.className.split(' ').filter(c => c !== ''); // filter用于移除空字符串}return result;
}
你可以这样使用这个函数:
let element = document.querySelector('#myElement'); // 选择你要检查的元素
let { classes, id } = getElementClassesAndId(element); // 获取classes和id
console.log('Classes:', classes); // 打印classes数组
console.log('ID:', id); // 打印id字符串