如何在单击时向按钮添加类

2024-01-02

很抱歉提出了愚蠢的问题,但我无法在单击时向按钮添加类。我有按钮列表,单击后我需要更改活动按钮的背景。我不知道如何在单击列表内部并添加类时获取元素的索引。我需要用纯 JavaScript 来实现。只需要离开$(document).ready(function()。这是我的小提琴https://jsfiddle.net/armkarma/ns5tfcL0/15/ https://jsfiddle.net/armakarma/ns5tfcL0/15/

HTML

<div class="content-itinerary__buttons-wrapper">
    <button class="content-itinerary__buttons description-text ">Day 2</button>
    <button class="content-itinerary__buttons description-text">Day 3</button>
    <button class="content-itinerary__buttons description-text">Day 4</button>
</div> 

JS

$(document).ready(function() {
let myBtns=document.querySelector('.content-itinerary__buttons-wrapper')

  myBtns.addEventListener('click', ()=>{
    console.log('test')
  }) 
});

只需要离开$(document).ready(function()

我不知道当你有等效的 JavaScript (DOMContentLoaded https://developer.mozilla.org/en-US/docs/Web/API/Document/DOMContentLoaded_event).

循环遍历所有按钮,在事件处理函数内首先删除class从所有按钮然后添加class仅针对单击的按钮:

document.addEventListener('DOMContentLoaded', () => {

    let myBtns=document.querySelectorAll('.content-itinerary__buttons');
    myBtns.forEach(function(btn) {

        btn.addEventListener('click', () => {
          myBtns.forEach(b => b.classList.remove('active'));
          btn.classList.add('active');
        });
 
    });

});
.active {
    color: #fff;
    background-color: #4CAF50;
}
<div class="content-itinerary__buttons-wrapper">

  <button class="content-itinerary__buttons description-text ">Day 2</button>
  <button class="content-itinerary__buttons description-text">Day 3</button>
  <button class="content-itinerary__buttons description-text">Day 4</button>

</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在单击时向按钮添加类 的相关文章

  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • 使用 Jquery 清除 5 个空 TD

    我有一个正在填充的动态表 我知道我不应该这样做 但是你会如何连续找到 5 个空 TD 并隐藏它们呢 因此 如果行包含 5 个空 TD 则不显示 TD 我想删除每个实例 td td td td td td td td td td 在 DOM
  • Javascript split 不是一个函数

    嘿朋友们 我正在使用 javascript sdk 通过 jQuery facebook 多朋友选择器在用户朋友墙上发布信息 但是我收到此错误friendId split 不是函数 这是我的代码 function recommendToFr
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • 图像背景不透明度不影响边框

    如何设置背景不透明度而不影响边框线不透明度 我找到的解决方案没有帮助 div class selected img src assets img image product 1 thumbnail jpg alt product 1 thu
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • Firebase 函数 onWrite 未被调用

    我正在尝试使用 Firebase 函数实现一个触发器 该触发器会复制数据库中的一些数据 我想观看所有添加的内容votes user vote 结构为 我尝试的代码是 const functions require firebase func
  • 从数据库检查数据的异步解决方案各种循环子句

    我想要做的是异步检查数据库并从中获取结果 在我的应用程序中我试图实现Asynchronously将此步骤解决为 从数据库中检查手机号码JsonArray循环子句的种类 Create JsonArray从结果 打印创建的数组 我学到了足够多的
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • 日期出现奇怪的错误,“未捕获非法访问”

    所以我试图找到最新的DateJavascript 可以处理 我把它减少到 9 月 275760 并增加了我开始捕获未捕获的天数illegal access例外new Date 09 24 275760 to new Date 10 13 2
  • 在 HTML 下拉列表中有一个滚动条

    我正在寻找一种在 HTML 的下拉列表中添加滚动条的方法 这样如果下拉列表包含的内容超过例如 5 项 将出现滚动条以查看其余项 这是因为我将被迫列出一些大清单 过去几个小时我一直在谷歌上搜索它 但没有运气 它需要适用于 IE8 FF 和 C
  • Chrome//kendoUI/jQuery:超出最大调用堆栈大小

    我正在使用 hottowell 模板来创建 spa 应用程序 并且我从 jquery 中收到了一个很好的错误 基本上我的问题从此刻开始尝试绑定我的视图 viewModelBinder js 来自 durandal 库 viewModelBi
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • 用于交互式图形绘制的轻量级 JavaScript 库? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有兴趣了解用于绘制交互式图表的最轻量级 javascript 库 我掌握的数据主要是与海洋研究相关的科学数据 我知道一些 jquery
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • HTML 锚点,禁用样式

    我有一些 html 锚链接代码 与文档的其余部分不同 我希望它看起来不是链接 有没有一种简单的方法可以禁用由于将文本包装在锚标记中而引起的样式更改 而不必强行使其相同 即 如果我更改正文字体样式 我不必也更改其他一些 link东西 将颜色设
  • 如何确定所有角度2分量都已渲染?

    当所有 Angular2 组件完成渲染时 是否会触发一个角度事件 For jQuery 我们可以用 function 然而 对于 Angular2 当domready事件被触发 html 只包含角度组件标签 每个组件完成渲染后 domrea
  • 循环内的异步性

    我正在使用 jQuery getJSON 用于从一组实用程序的给定 URL 检索数据的 API 我真的很想找到一种为每个实用程序重用代码 完全相同 的方法 由于循环的执行与 ajax 调用无关 因此我无法找到保留循环值的方法 我知道这个描述
  • 在 Nexus 7 2013 上更改方向时 CSS 媒体查询不起作用

    我目前正在我的笔记本电脑 台式电脑和 Nexus 7 2013 上测试 CSS 媒体查询 除了 Nexus 7 之外 它们在台式机和笔记本电脑上都运行良好 当我更改方向时 除非刷新页面 否则样式不会应用 例如 以纵向模式握住设备时 页面正常

随机推荐

  • 将 float 指定为字典键会改变其精度 (Python)

    我有一个浮点数列表 实际上它是一个 pandas Series 对象 如果它改变了任何东西 如下所示 mySeries 22 16 0 23 14 0 24 12 0 25 10 0 26 3 1 因此该系列的元素位于右侧 索引位于左侧 然
  • 对于失败的验证或无效的重复项,我应该使用哪个状态代码?

    我正在使用基于 REST 的 API 构建一个应用程序 并且已经为每个请求指定状态代码 对于验证失败的请求或尝试在数据库中添加重复项的请求 我应该发送什么状态代码 我已经看过了http www w3 org Protocols rfc261
  • 如何让 Scala BigDecimal 显示大量数字?

    执行以下操作 val num BigDecimal 1 0 val den BigDecimal 3 0 println num den MathContext DECIMAL128 我只得到 0 333333333333333333333
  • 当尝试 String#upcase Ruby 时,一无所知......

    我刚刚安装了 RVM 正在阅读 The Well Grounded Rubyist 一书 在第一章中我应该尝试ri String upcase查看有关 upcase 方法的文档 但是我收到一条消息 关于 String upcase 一无所知
  • 如何在 googlemock 中创建部分(混合)模拟?

    谷歌建议将调用委托给父对象 https github com google googletest blob master googlemock docs CookBook md delegating calls to a real obje
  • 为什么我从 Membership.GetCurrentUserName 收到 NullReferenceException?

    我刚刚转而使用 msbuild 来预编译我的网站 现在我收到了这个奇怪的错误 我调用了 Membership GetUser 它抛出 NullReferenceException Object reference not set to an
  • 如何在VueJs中动态添加属性

    我正在使用 vuejs 我想知道如何控制输入 必要时添加禁用属性 有没有办法在vuejs中动态添加属性 下面我的文本字段组件
  • 安排 Amazon Elastic MapReduce 作业的工具/方法

    我使用 EMR 创建新实例并处理作业 然后关闭实例 我的要求是定期安排工作 一种简单的实施方式是使用石英来触发 EMR 作业 但从长远来看 我对使用开箱即用的 MapReduce 调度解决方案感兴趣 我的问题是 EMR 或 AWS SDK
  • 如何使用 Kotlin 在 Android Studio 中的 RecyclerView 上添加 Onclick 监听器?

    所以我想要一个onclicklistener for my RecyclerView在 Android 中 但我不知道该怎么做 我有一个CustomAdapterClass for my Workoutlist看起来像这样 class Cu
  • href 与脚本化页面转换和按钮突出显示

    我正在与 knockout js 一起构建许多 jQuery Mobile SPA 总体上取得了巨大的成功 我确实注意到这主要是一个外观问题 现在希望能解决它 通过链接的锚标记href产生一个漂亮的按钮突出显示 默认主题为蓝色 在页面转换期
  • plist本地化问题

    我的 plist 有一个奇怪的问题 我正在使用 xcode 4 每当我尝试将本地化放在这个 plist 上时 我都无法编辑它 我的意思是 当我编辑和更改 plist 中的值时 应用程序仍然采用旧值 即使我删除它 我仍然加载了旧的 plist
  • SQL Server 2012 - “可重复读”隔离级别如何工作?

    我觉得我应该知道这一点 但我找不到任何具体概述这一点的内容 所以就这样吧 The 文档 https msdn microsoft com en us library ms173763 aspx对于 SQL Server 将 REPEATAB
  • 在 Java 中创建动态二维矩阵

    我想要一个动态矩阵 行数和列数未知 通过单击按钮填充它 但还有更多 我不想添加整行 而只是一次添加一个单元格 单击一下 添加一个单元格 当然不是随机的 第一行的第一个单元格 第一行的第二个单元格 然后第二行的相同单元格 依此类推 我了解 U
  • 为每个项目执行 npm install 会占用太多驱动器空间

    有没有什么方法可以将 npm install 路由到硬盘驱动器的特定部分 当我执行 npm install 时 它会在驱动器的该部分中创建 node module 文件夹 当我运行任何项目时 它会在驱动器的该部分中查找依赖项 就像单身一样p
  • UIWebView 获取 HTML 源

    我正在尝试获取 UIWebView 的 HTML 源代码 而无需再次重新下载 也称为进行另一次下载 例如 NSData dataWithContentsOfURL NSURL URL 或启动 NSURLRequest 浏览 UIWebVie
  • 在生产环境中部署 Sql Server Reporting Services 报告

    如何在生产盒上部署 Sql 服务器报告 在本地这不是问题 我只需指定 url 然后右键单击项目并说部署 将其部署在我的本地服务器上 但生产服务器却并非如此 我建议您创建可以在生产服务器上执行的 rs 脚本 查看 Reporting Serv
  • 如何在 WordPress 页面中创建不同的可编辑部分?

    我一直在 WordPress 上构建我的第一个主题 但在将内容添加到不同部分时遇到了问题 我的 HTML 有点像这样 div lt Text gt div div lt Text and Images gt div div lt Text
  • 哪些 GTK+ 元素支持哪些 CSS 属性?

    在将我自己的 CSS 应用到 GTK 应用程序时 我注意到某些元素忽略某些 CSS 属性 而其他元素则忽略其他元素或不忽略它们 这导致我搜索哪些元素支持哪些 CSS 属性的概述 到目前为止我找不到任何这样的概述 例如Gtk Label不支持
  • 用于公开通用接口的非通用版本的模式

    假设我有以下用于公开分页列表的界面 public interface IPagedList
  • 如何在单击时向按钮添加类

    很抱歉提出了愚蠢的问题 但我无法在单击时向按钮添加类 我有按钮列表 单击后我需要更改活动按钮的背景 我不知道如何在单击列表内部并添加类时获取元素的索引 我需要用纯 JavaScript 来实现 只需要离开 document ready fu