如何使用JavaScript/jQuery在一个页面上激活多个按钮
How can I activate multiple buttons on one page using JavaScript/jQuery?
我想构建一个页面,用户可以通过单击按钮选择多个项目。我已经使用了焦点和活动类来更改按钮的外观,但用我当前的代码,我只能激活一个按钮。我正在寻找使用户能够激活多个按钮的代码。
HTML
<button class="btn btn-1">
button 1
</button>
<button class="btn btn-1">
button 2
</button>
<button class="btn btn-1">
button 3
</button>
<button class="btn btn-1">
button 4
</button>
CSS
.btn:hover {
background-color: rgba(52, 152, 219,0.6);
}
.btn:focus {
background-color: rgba(52, 152, 219,0.6);
}
.btn:active, .btn:visited {
background-color: rgba(52, 152, 219,0.6);
}
.active {
background-color: rgba(52, 152, 219,0.6);
}
这是我一直在使用的jQuery代码,试图将一个永久活动类添加到那些被点击的按钮中。这还不起作用。
$(document).ready(function(){
$('.btn').click(function() {
$('.btn').addClass('active');
});
});
您应该使用$(this)
将active
类添加到单击的按钮
$(document).ready(function(){
$('.btn').click(function() {
$(this).addClass('active');// use this here
});
});
演示
编辑-根据@Regent的建议,您可以在单击按钮时使用toggleClass来激活和禁用,使用下面的代码
$(document).ready(function(){
$('.btn').click(function() {
$(this).toggleClass('active');
});
});
toggleClass演示注意-我在这里评论了.btn:focus
css类,因为第二次单击按钮时它看起来是活动的。
这样就可以了。
$(document).ready(function(){
$('.btn').click(function() {
$('.btn').toggleClass('active');
});
});
我认为如果你使用"this",这个动作只会在你点击的按钮中生效。
相关文章:
- 如何激活下拉菜单:在一个元素上单击768px宽度下方,在另一个元素上将鼠标悬停在768px上方
- 在单击按钮时激活按钮的悬停状态,直到单击另一个按钮(Javascript/JQuery)
- 如何每 10 秒调用一次 JS 函数,然后以角度激活一个函数
- jquery日期选择器-选择时激活另一个日期选择器
- 单击一个具有字符串名称的类以激活另一个类
- 将鼠标悬停在某个班级时激活另一个班级
- 加载另一个相同页面时,使用新数据激活第一个网页
- 激活单击上一个按钮后创建的按钮上的单击功能
- j查询如何为具有相同类名的多个元素激活一个事件
- jQuery - 激活一个切换按钮会禁用另一个
- 一个 URL 可以激活多个脚本吗?
- 如何获取最后一张和第一张幻灯片以相应地激活或禁用下一个和上一个按钮
- 如何一次只在一个元素上激活.hooper()函数
- 当另一个类被激活时添加一个类
- Google Maps for Rails在一个未激活的引导选项卡中
- 我如何编程一个JS按钮,它也可以在点击和滚动时激活转换
- 如何使用JavaScript/jQuery在一个页面上激活多个按钮
- 我想在从下拉列表中选择其他选项时激活一个文本框,否则它将保持不活动状态
- 使一个按钮激活JavaScript代码
- 如何激活另一个选项卡后重新加载相同的php文件点击一个按钮