javascript - 想要在 JavaScript 中的数组的第二个元素上切换 css 类

标签 javascript html css

我正在发布我的列表 html 代码:

<ul>
    <li>Notebook</li>
    <li>Jello</li>
    <li>Spinach</li>
    <li>Rice</li>
    <li>Birthday Cake</li>
    <li>Candles</li>
</ul>

我想在列表的每个元素上应用以下 css 类:

.done {
  text-decoration: line-through;
}

基本上我希望能够敲击它然后使用切换来撤消它。我只能为列表的第一个元素做到这一点。我如何申请第二个元素以及自 Class List. toggle 仅适用于仅选择数组第一个元素的查询选择器。 我是 JavaScript 的初学者。

最佳答案

首先,您必须使用 querySelectorAll,而不仅仅是 querySelector,因为这只会选择第一项,正如您已经注意到的那样;)

这是一个在您单击每个元素时切换类的示例:

document.querySelectorAll('li').forEach((listItem) => {
    listItem.addEventListener('click', (event) => {
        event.target.classList.toggle('done');
    });
});

关于javascript - 想要在 JavaScript 中的数组的第二个元素上切换 css 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58561328/

相关文章:

javascript - react 引导轮播不工作

javascript - 如何在循环中缓存$(this)?

javascript - 删除所有选定的选项

html - 当上面的其他元素将其向下推时,如何将 CSS/HTML 内容框扩展到浏览器/视口(viewport)窗口的底部?

ff/opera 中带有 margin-left auto 的 css3 过渡

html - CSS 背景颜色在样式表和浏览器中不匹配

javascript - Bootstrap 3 - 展开和折叠表行

c# - 在 HTML 中,这个属性的名称是什么?

css - 在 2 个单独的表中选择类为 "td"的第一个和最后一个 "selected"元素

javascript - 如何在不重置表单的情况下显示 javascript 警报