你好.如果有多个值,我怎么能得到一个类的值? 例如,我有这个标签
<ul>
<li id="145" class="AAA BBB">
<li id="148" class="AAA BBB CCC">
</ul>
Run Code Online (Sandbox Code Playgroud)
class="AAA BBB"class="AAA BBB CCC" 每次我点击这个标签我都需要有class属性的最后一个值.例如,在上面的类(1)中我需要(BBB)和(2)我需要(CCC).我怎么能得到它们?我不需要拥有所有的价值观.
在原生JS中:
var classNames = document.getElementById('145').className.split(/\s+/);
console.log(classNames[classNames.length - 1]) // 'BBB'
Run Code Online (Sandbox Code Playgroud)
甚至更短:( mplungjan建议)
var classNames = document.getElementById('145').className.split(/\s+/);
console.log(classNames.pop()) // 'BBB'
Run Code Online (Sandbox Code Playgroud)
当然你可以把它变成一个单行:
document.getElementById('145').className.split(/\s+/).pop()
Run Code Online (Sandbox Code Playgroud)
VisioN建议使用/\s+/而不是' '作为split参数来捕获多个后续的空格,而不仅仅是单个空格.
但是,您可能希望在类名后删除空格(如`class ="abc"):
document.getElementById('145').className.trim().split(/\s+/).pop()
Run Code Online (Sandbox Code Playgroud)