【发布时间】:2012-07-21 08:33:03
【问题描述】:
我正在使用
event.target.className
获取ClassName,但有时一个元素有多个类名,我该怎么做,
所以它只给出first class名称作为结果?
哦,请不要使用 jQuery。
【问题讨论】:
标签: javascript html class dom-events classname
我正在使用
event.target.className
获取ClassName,但有时一个元素有多个类名,我该怎么做,
所以它只给出first class名称作为结果?
哦,请不要使用 jQuery。
【问题讨论】:
标签: javascript html class dom-events classname
有多种方法可以获取元素的第一类
方法优先:使用 className 属性
使用 DOM 元素的 className 属性和 split 函数,将 className 用空格分割并返回一个数组。
event.target.className.split(" ")[0]; //0 to retrieve first class
所有主流浏览器都支持 className 属性。
方法二:使用classList属性
使用 DOM 元素的 classList 属性,返回 DOMTokenList 类对象(已被空格分割)
event.target.classList[0]; //0 to retrieve first class
classList 属性相对较新,也相对较快。 这在 IE8 和 IE9 中不受支持。 Support in various browsers
【讨论】:
如果您想定位事件处理程序已附加到的元素,请使用此
event.currentTarget.classList[0]
【讨论】: