如何在单击多个按钮时更改按钮颜色

2023-12-29

当页面加载其他两个不活动的按钮时,我有一个按钮需要处于活动状态。单击非活动按钮时,我需要从另一个按钮中删除活动类并将其添加到单击的按钮中。

$("button").click(function () {
      clicked = true;
      if (clicked) {
        $(this).toggleClass('active');
        clicked = true;
      } else {
        $(this).removeClass('active');
        clicked = false;
      }
    });
.featuredBtn.active {
  background-color: #bf9471;
  color: white;
}

.featuredBtn {
  width: 250px;
  height: 50px;
  color: #8c8c8c;
  font-weight: 700;
  background-color: #f4efeb;
  border: none;
  letter-spacing: 2px;
  outline: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row">
  <div class="col-lg-12 col-xs-12" style="text-align: center;">
    <button type="button" class="featuredBtn active" id="btnOne">BUTTON ONE</button>
    <button type="button" class="featuredBtn" id="btnTwo">BUTTON TWO</button>
    <button type="button" class="featuredBtn" id="btnThree">BUTTON THREE</button>
  </div>
</div>

单击新按钮时,应删除具有 .active 类的按钮。新单击的按钮应采用 .active 类。


该代码不起作用,因为(clicked)始终为 true - 每次函数运行时,每个按钮都会将其设置为 true。如果要检查单击的按钮是否处于活动状态,可以设置变量clicked = this.getAttribute('class').includes('active')。如果按钮有active class, clicked将会是真的。

然而,我们甚至不需要检查单击的按钮是否处于活动状态 - 我们只需删除active从所有按钮中选择一个类,然后将其设置为刚刚使用$(this)选择器,如下:

$("button").click(function() {
   $("button").removeClass("active");
   $(this).addClass("active");
});
.featuredBtn.active {
  background-color: #bf9471;
  color: white;
}

.featuredBtn {
  width: 250px;
  height: 50px;
  color: #8c8c8c;
  font-weight: 700;
  background-color: #f4efeb;
  border: none;
  letter-spacing: 2px;
  outline: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row">
  <div class="col-lg-12 col-xs-12" style="text-align: center;">
    <button type="button" class="featuredBtn active" id="btnOne">BUTTON ONE</button>
    <button type="button" class="featuredBtn" id="btnTwo">BUTTON TWO</button>
    <button type="button" class="featuredBtn" id="btnThree">BUTTON THREE</button>
  </div>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在单击多个按钮时更改按钮颜色 的相关文章

  • 如何让 jquery Tooltipster 插件适用于新创建的 DOM 元素?

    我正在使用 Tooltipster 插件http calebjacob com tooltipster http calebjacob com tooltipster 这很棒 但我已经动态生成了插入到 DOM 中的内容 工具提示程序似乎没有
  • 淡出和循环一组 div 的最佳方式

    假设我有以下 div div class a You are funny div div class b You are smart div div class c You are cool div 最好的展示方式是什么div a持续 5
  • 覆盖并重置 CSS 样式:auto 或 none 不起作用

    我想覆盖为所有表定义的以下 CSS 样式 table font size 12px width 100 min width 400px display inline table 我有一个特定的表 其类名为 other 最后的餐桌装饰应该是这
  • Twitter 嵌入时间轴小部件

    我继续下载http platform twitter com widgets js http platform twitter com widgets js And the http platform twitter com embed t
  • Chartjs刻度标签位置

    尝试让 Y 轴刻度标签看起来像image https i stack imgur com XgoxX png 位于秤顶部且不旋转 缩放选项当前如下所示 scales yAxes id temp scaleLabel display true
  • 为什么“tbody”不设置表格的背景颜色?

    我在用 tbody 作为 CSS 选择器来设置background color在一个表中 我这样做是因为我有多个 tbody 表内的部分 它们具有不同的背景颜色 我的问题是 当使用border radius在细胞上 细胞不尊重backgro
  • 悬停时为 SVG 制作动画

    我正在尝试在悬停时为 SVG 文件设置动画 默认情况下 它可以使用 svg 函数实现出色的动画效果 例如
  • 查询为空 Node Js Sequelize

    我正在尝试更新 Node js 应用程序中的数据 我和邮递员测试过 我的开发步骤是 从数据库 MySQL 获取ID为10的数据进行更新 gt gt 未处理的拒绝SequelizeDatabaseError 查询为空 我认识到 我使用了错误的
  • 当用户单击链接时,如何记录 MixPanel 事件?

    当用户单击某种类型的链接时 我试图在 MixPanel 中记录一个事件 我正在使用 JQuery 不引人注意地完成此操作 据我所知 我需要添加一个回调函数 以便在记录事件后将用户带到 URL 这是我正在使用的代码 不幸的是
  • 如何在jquery中获取保存时间和当前时间的差异?

    我想在 javascript 或 jquery 中获取保存时间和当前时间之间的时差 我节省的时间看起来像Sun Oct 24 15 55 56 GMT 05 30 2010 java中的日期格式代码如下 String newDate 201
  • :jQuery / Sizzle 中的 nth-of-type()?

    让我惊讶的是Sizzle http sizzlejs com jQuery 使用的选择器引擎 带有一个内置的 nth child 选择器 但缺少 nth of type 选择器 为了说明之间的区别 nth child and nth of
  • Select2 下拉列表动态添加、删除和刷新项目

    这让我发疯 为什么 Select2 不能在其页面上实现清晰的方法或示例如何在 Select2 上进行简单的 CRUD 操作 我有一个 select2 从 ajax 调用获取数据
  • JavaScript 代码在不使用 ActiveX 的情况下截取网站屏幕截图

    我有一个用户与之交互的 JavaScript 应用程序 我需要保存当前界面的外观 裁剪出我需要的部分 或者通过指定div只拍摄我需要的部分 然后发送回服务器 显然任何外部服务都无法做到这一点 我需要一个 JavaScript 或Flash
  • 如果数字小于 10,则显示前导零 [重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 相当于 printf string format https stackoverflow com questions 610406 javascript equivalent t
  • JavaScript onresize 事件多次触发

    我在尝试仅在触发 onresize 事件时运行一次函数时遇到一些麻烦 我已经看过这个问题DOM onresize 事件 https stackoverflow com questions 1500312 javascript onresiz
  • 如何获取 UIWebView 中元素的位置?

    我在 iPad 程序中加载了 html 的 UIWebView 通过使用 webkit column width 我将 html 分为几列 padding 0px height 1024px webkit column gap 0px we
  • 为范围旋钮 ionic-range 添加边框颜色

    我正在使用离子范围添加范围滑块 并想向范围旋钮添加边框 由于它的 ionic4 和范围旋钮是 Shadow dom 的一部分 我无法使用范围旋钮的 border 属性直接更改边框 我已附上我想要实现的图像 范围旋钮周围有白色边框 现有属性只
  • 如何在 javascript 正则表达式中匹配平衡分隔符?

    我原以为这个问题是不可能的 据我所知 Javascript 的正则表达式既没有递归插值 也没有漂亮的 NET 平衡组功能 但问题就在那里 如问题 12 所示正则表达式 alf nu http regex alf nu 匹配平衡对 lt an
  • 在 Javascript 中减少/分组数组

    基于this https stackoverflow com a 40774906 3254598例如 我想以稍微不同的方式按对象进行分组 结果应该如下 key audi items make audi model r8 year 2012
  • KeyboardAvoidingView - 隐藏键盘时重置高度

    我正在使用 React NativeKeyboardAvoidingView设置我的高度View当显示键盘时 但是当我关闭应用程序中的键盘时 视图的高度不会变回原来的值

随机推荐

  • 如何从Delphi函数返回数组?

    我的应用程序中有一个函数需要返回一个数组 我在几个地方找到了如何通过声明数组类型来做到这一点 例如 type TStringArray array of string 然后声明我的函数 function SomeFunction SomeP
  • 无法使用python编辑hosts文件

    我正在尝试编写一个 python 脚本 它可以根据一天中的时间阻止网站 但我无法在 Windows 中编辑主机文件 即使以管理员身份运行 cmd 也是如此 这是代码 import time from datetime import date
  • 覆盖基本 localized.strings 文件

    有没有一种方法可以为项目中的多个目标提供一个基本 localized strings 文件 并且为每个目标提供第二个 localized string 文件 该文件将覆盖单个值并将其附加到基本文件中 EDIT 我希望我的应用程序有两个 st
  • 如何使用libgit2获取单个文件的差异?

    是否有一个函数相当于git diff FILE in libgit2 换句话说 如何有效地检索 a 的差异single文件没有libgit2查看工作目录中的其他文件 git diff FILE将显示您相对于索引所做的更改 这可以通过使用 l
  • 括号内的 Swift 类型

    今天我在玩 Swift 一些奇怪的类型开始出现 let flip Int random 2 or arc4random or rand whatever you prefer 如果我输入flip进入 Xcode 6 Beta 2 自动完成会
  • HDF5 C++ 接口:编写动态二维数组

    我正在使用HDF5 C API http www hdfgroup org HDF5 doc cpplus RM index html写入二维数组数据集文件 HDF 集团拥有一个创建的例子 ftp ftp hdfgroup org HDF5
  • 在 tikzDevice 中使用 tikzAnnotate 注释 ggplot2 图形

    我想用tikzDevice包括带注释的ggplot2中的图表Latex文档 tikzAnnotate帮助有一个如何将它与基本图形一起使用的示例 但如何将它与基于网格的绘图包一起使用 例如ggplot2 挑战似乎是 tikz 节点的定位 pl
  • 将基本路径传递给运行时加载的 swf

    我有一个 main swf 它加载 module swf 而 module swf 加载一些资源 module swf 独立工作 也需要在由 main swf 加载时工作 但不幸的是 当 main swf 加载时 module swf 找不
  • 如何在Java mongodb驱动程序中使用“_id”字段查询文档?

    我试图通过搜索 id 键来查找 MongoDB 中的文档 我的文档看起来像这样 id ObjectId 4f693d40e4b04cde19f17205 hostname hostnameGoesHere OSType OSTypeGoes
  • 缺少:房产 ID 之后

    我不明白我在这里做错了什么 第 3 行报告缺少 在属性 ID 之后 document ready function imagegallery img each function this css width 100 imagegallery
  • 如何防止按下按钮时活动加载两次

    如果我在第一次单击后立即按下按钮两次 我会尝试阻止活动加载两次 我有一个活动 点击按钮即可加载 比如说 myButton setOnClickListener new View OnClickListener public void onC
  • wpf 树视图 mvvm

    我正在尝试使用 mvvm 填充树视图 但树不显示任何数据 我有一个员工列表 它是我的虚拟机中的一个属性 其中包含员工数据 xaml如下
  • expressjs:如何重定向到处理程序中间的静态文件?

    我正在使用expressjs 我想做这样的事情 app post bla function req res next some code if cond req forward staticFile html 正如 Vadim 指出的 您可
  • 在 ActionScript3 中加密并在 asp.net c# 中解密

    我需要将数据从闪存发送到服务器 因此我正在寻找一个用于加密文本的闪存 ActionScript 3 0 脚本和一个用于解密文本的 C net 脚本 有人能帮我一下吗 查看 as3corelib 加密包 http code google co
  • 如何使用程序化 Spark 提交功能

    最近 2015 年春季 有一个功能显然旨在允许以编程方式提交 Spark 作业 这是吉拉https issues apache org jira browse SPARK 4924 https issues apache org jira
  • 如何要求抽象方法是协程?

    我如何要求抽象基类实现特定方法作为协程 例如 考虑这个 ABC import abc class Foo abc ABC abc abstractmethod async def func pass 现在 当我子类化并实例化它时 class
  • 如何使用 jQuery 将值记录到 Firebug 控制台?

    我只是想知道是否有一种方法可以使用 jQuery 将一些变量值记录到 Firebug 控制台以进行调试 jQuery 只是一个 JavaScript 库 因此您可以使用console log http getfirebug com logg
  • Spring Webclient:非法参数异常没有足够的变量来扩展“comment_count”

    我正在使用 spring webclient 发出 Facebook graph api 请求 其 url 包含 comment count 但是 得到这个例外 java lang IllegalArgumentException Not
  • 为什么这个简单的汇编程序可以使用 AT&T 语法而不是 Intel 语法?

    这段代码有什么问题 在 x86 64 Linux 上运行 intel syntax text globl start start mov rax 1 mov rdi 1 mov rsi msg mov rdx 14 syscall mov
  • 如何在单击多个按钮时更改按钮颜色

    当页面加载其他两个不活动的按钮时 我有一个按钮需要处于活动状态 单击非活动按钮时 我需要从另一个按钮中删除活动类并将其添加到单击的按钮中 button click function clicked true if clicked this