javascript - 将 "current"类添加到单击的元素并在单击另一个元素时将其删除?

标签 javascript jquery css addclass

我正在尝试使用 jQuery 将“当前”类添加到 div,然后在单击不同的 div 时删除该类。到目前为止,我已经添加了“当前”类,但我不确定如何从该 div 中删除“当前”类并将其应用于单击的新 div。

这是 Javascript:

$(document).ready(function() {
  $('#images div').click(function() {
    $(this).addClass('current');
    $('.bios .active').hide().removeClass('active');
    $('.bios div').eq($(this).index()).show().addClass('active');
  });
});

这是 HTML:

<div id="images">
    <div><div class="name">Name 1</div></div>
    <div><div class="name">Name 2</div></div>
    <div><div class="name">Name 3</div></div>
</div>
<div class="bios">
    <div>Bio 1</div>
    <div>Bio 2</div>
    <div>Bio 3</div>
</div>

所以我只想将“当前”类应用到被单击的 div 中的图像,并从可能具有它的任何先前 div 中删除该类。谢谢。

最佳答案

只需删除它所有 sibling 的类,因为当您决定在 DOM 中的其他地方使用 .current 时,具体可以避免混淆。

$(document).ready(function() {
    $('#images div').on('click', function() {
        $(this).addClass('current').siblings().removeClass('current');
        $('.bios .active').hide().removeClass('active');
        $('.bios div').eq($(this).index()).show().addClass('active');
    });
});

关于javascript - 将 "current"类添加到单击的元素并在单击另一个元素时将其删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22483010/

相关文章:

javascript - 链接到 asp.net 中 javascript 提示中的另一个页面

jquery - jqGrid事件:jqGridInlineAfterSaveRow rowdata empty?

javascript - HTMLStyleElement 和 CSSStyleElement 有什么区别

javascript - 使 JavaScript 图像在滚动时移动更流畅

javascript - 复合组件: How to refer to the clicked child element in react?

javascript - 如何使用 queryString 或任何其他方法解析 url 参数

javascript - 在 JavaScript 范围对象中检测换行符时出现问题

javascript - 如何获取通配符表单 ID

javascript - dropzone.js 和 jquery 版本兼容性

html - 当 css 中的屏幕宽度不足时,如何始终包含边距?