Jquery切换按钮使用.s兄弟取消选择
Jquery toggle buttons deselect using .siblings
我正在尝试制作一个有三个按钮的界面元素。
只能选择一个按钮或不选择任何按钮。也就是说,按钮一开始是褪色的,当用户点击其中一个按钮时,它会亮起,其他两个按钮则保持褪色。
如果用户随后单击另一个按钮,则任何其他按钮都将淡出,用户单击的按钮将突出显示。这不是问题。
当我试图让一个当前高亮显示的按钮恢复到褪色状态时,如果用户点击它,问题就来了,所以你没有高亮显示的按键。
这就是我要做的:
$('.gradeButtons button').click(function() {
if (!$(this).siblings().hasClass('quoteGrading'))
{
$('.gradeButtons button').addClass('quoteGrading')
}
if (!$(this).hasClass('quoteGrading'))
{
$(this).addClass('quoteGrading')
} else {
$(this).removeClass('quoteGrading')
}
})
我的HTML:
<div class="control-group gradeButtons">
<button type="button" class="btn btn-danger quoteGrading">H</button>
<button type="button" class="btn btn-warning quoteGrading">W</button>
<button type="button" class="btn btn-info quoteGrading">C</button>
</div>
"quoteGrading"提供淡出/无效效果。
在只有一个或没有按钮可以突出显示(没有应用"quoteGrading"类)的情况下,我如何使其正常工作?
实时演示
$(function() {
$('.gradeButtons button').on("click",function() {
$(this).siblings().removeClass('quoteGrading');
$(this).toggleClass('quoteGrading');
$("input.inp").hide();
$("#"+this.id+"input").toggle($(this).hasClass("quoteGrading"));
});
});
使用
<div class="control-group gradeButtons">
<button type="button" id="H" class="btn btn-danger">H</button>
<button type="button" id="W" class="btn btn-warning">W</button>
<button type="button" id="C" class="btn btn-info">C</button><br />
<input type="text" class="inp" placeholder="H - message" id="Hinput" /><br/>
<input type="text" class="inp" placeholder="W - message" id="Winput" /><br/>
<input type="text" class="inp" placeholder="C - message" id="Cinput" /><br/>
</div>
和
.quoteGrading { color:red }
.inp { display:none }
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- jquery点击函数select&取消选择
- 使用Jquery选择或取消选择ListView中的所有复选框
- 使用jquery选中/取消选中单个复选框
- 使用javascript取消隐藏和隐藏表单中的某些元素
- 如何销毁/删除/取消绑定SnapSVG.js
- 滚动然后捕捉到顶部而不是取消捕捉
- 取消绑定主干视图事件
- 如何取消object.prototypes javascript的一个函数
- 使用javascript在页面加载时取消选中所有复选框
- 阻止浏览器对keydown事件作出反应,但不取消该事件
- jquery选中并取消选中所有操作
- IE11中的第二个调用取消了第一个Fetch API调用
- 如何知道使用socket.io订阅/取消订阅频道
- 如何在单击“提交”按钮时为“新建”窗口编写JavaScript,用“确定”和“取消”显示注册信息
- 如何在javascript中取消选择文本框
- 如何从另一个处理程序内部取消JavaScript事件处理程序函数的执行
- JQUERY检索并删除以前的兄弟姐妹
- 悬停以显示兄弟元素,但轻弹
- Jquery切换按钮使用.s兄弟取消选择