javascript - JQuery 仅切换 1 个项目,其他项目未单击

标签 javascript jquery toggle slidetoggle

好的,我有这个 Jquery,它可以切换页面上的一些单选按钮。我想要它,所以当有人点击其中一个单选按钮时,其他人不会被点击。目前我的方式是他们一次可以选择 3 个,我需要它像一个普通的单选按钮一样,一个被点击而其他的不被点击

jQuery:

$(function () {
  $('.box-ul .btn .dot').click(function () {
    $(this).toggleClass('clicked');
  });
});

HTML:

<div class="box-ul box-video right">
    <ul>
        <li><span class="yes"></span><p>Easy to Use</p></li>
        <li><span class="yes"></span><p>Step by Step<br /><span>details instructions</span></p></li>
        <li><span class="yes"></span><p>Setup time<br /><span>under 30 mins</span></p></li>
        <li class="btn btn-expanded">
          <div class="btn-t">
            <span class="dot left"></span>
          <p class="left">Expanded<br />
            <span>This is the extend button It has space for slightly more info.</span>
          </p>
            <div class="cl">&nbsp;</div>
          </div>
        </li>
        <li class="btn">
          <div class="btn-t">
            <span class="dot left"></span>
            <p class="left">Green Doggies</p>
            <div class="cl">&nbsp;</div>
          </div>
          </li>
        <li class="btn">
          <div class="btn-t">
            <span class="dot left"></span>
            <p class="left">Email Support</p>
            <div class="cl">&nbsp;</div>
          </div>
        </li>
    </ul>
</div>

最佳答案

使用.removeClass()对所有不是您首先点击的匹配元素进行分类,如下所示:

$('.box-ul .btn .dot').click(function () {
  $('.box-ul .btn .dot').not(this).removeClass('clicked');    
  $(this).toggleClass('clicked');
});​

You can test it here .在这种情况下,我们选择所有其他匹配的 '.box-ul .btn .dot' 元素,过滤掉我们用 .not() 单击的元素。 ,然后做一个 .removeClass()在他们。最后一部分仍然是.toggleClass()因此您也可以通过单击事件的取消选择。如果您希望能够取消选择(甚至更像是单选按钮),那么只需将其更改为 .addClass() .

关于javascript - JQuery 仅切换 1 个项目,其他项目未单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3277199/

相关文章:

javascript - : getElementsBy. .(..) 和 getElementBy 之间的不同用法

javascript - 在本地存储中存储数据无法正常工作

javascript - 尝试纠正 JSLint 投诉时未定义 jQuery 值 : "Don' t make functions within a loop"

jquery - 切换盲+幻灯片效果在 Jquery 中不起作用

asp.net-mvc - 获取当前的 Action 和 Controller ,并将其用作Html.ActionLink中的变量?

javascript - UI Bootstrap 选项卡在重新加载后保存事件选项卡

javascript - jQuery、javascript 和 IE8

javascript - 如何从 ajax 返回的纯文本中提取 href 和 src 结果

javascript - 在 jQuery Mobile 中作为链接的选项值

javascript - Foundation 的顶栏,切换不起作用