HTML DOMTokenList
DOMTokenList
一个 DOMTokenList
是一个由空格分隔的标记集合。
一个 DOMTokenList
可以通过索引访问(从 0 开始)。
length 属性 返回 DOMTokenList 中的标记数量。
注意
HTML 元素的 classList 属性 表示一个 DOMTokenList。
DOMTokenList 属性和方法
名称 | 描述 |
---|---|
add() | 向列表中添加一个或多个标记 |
contains() | 如果列表包含一个类,则返回 true |
entries() | 返回一个包含列表中键/值对的迭代器 |
forEach() | 对列表中的每个标记执行回调函数 |
item() | 返回指定索引处的标记 |
keys() | 返回一个包含列表中键的迭代器 |
length | 返回列表中的标记数量 |
remove() | 从列表中删除一个或多个标记 |
replace() | 替换列表中的标记 |
supports() | 如果标记是属性支持的标记之一,则返回 true |
toggle() | 在列表中的标记之间切换 |
value | 将标记列表作为字符串返回 |
values() | 返回一个包含列表中值的迭代器 |
示例
向元素添加“myStyle”类
element.classList.add("myStyle");
尝试一下 »
从元素中删除“myStyle”类
element.classList.remove("myStyle");
尝试一下 »
在“myStyle”上切换开和关
element.classList.toggle("myStyle");
尝试一下 »
以下有更多示例。
不是数组
DOMTokenList 不是数组!
DOMTokenList 看起来像数组,但它不是。
您可以循环遍历 DOMTokenList 并使用索引引用其标记。
但您不能在 DOMTokenList 上使用 Array 方法,如 push()、pop() 或 join()。
获取“myDIV”元素的类名
<div id="myDIV" class="myStyle anotherClass thirdClass">
<p>我是 myDIV。</p>
</div>
const list = document.getElementById("myDIV").classList;
尝试一下 »
如果元素具有“myStyle”类,则删除“anotherClass”。
if (element.classList.contains("mystyle")) {
element.classList.remove("anotherClass");
}
尝试一下 »
在类之间切换以创建下拉按钮
document.getElementById("myBtn").onclick = function() {myFunction()};
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
}
尝试一下 »
创建粘性导航栏
// 获取导航栏
const navbar = document.getElementById("navbar");
// 获取导航栏的偏移位置
const sticky = navbar.offsetTop;
// 当您到达其滚动位置时,将粘性类添加到导航栏
// 当您离开滚动位置时,将其删除
function myFunction() {
if (window.pageYOffset >= sticky) {
navbar.classList.add("sticky")
} else {
navbar.classList.remove("sticky");
}
}
尝试一下 »