微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在另一个div类上时,我的border-bottom不会消失

如何解决在另一个div类上时,我的border-bottom不会消失

我有一个问题。我有一个带有按钮的过滤功能我有下面正在处理的代码。问题是,当按钮处于活动状态时,我想要的是边框底部的颜色更改颜色。在我创建的代码中,当它处于活动状态时,我设法提供了一个条件。但是当我选择另一个按钮时,上一个按钮中的边框底部不会被完美移除。

我希望活动按钮的底部边框为laterTs TIMESTAMP(3),earlierTs TIMESTAMP(3),,非活动按钮的底部边框为#0f0f0f。丢失的代码在哪里或我的代码在哪里?

#FAFAFA
$(document).ready(function(){
    $('.list-content').css('display','none');
    $('.all').show();
    $('button').on("click",function(){
        let target = $(this).data('target');
      let content = $('.list-content').data('content');
      
      console.log(target);
      
      $('li#' + target).addClass('active');
      $('.list-content').hide(); 
      $('.' + target).show();
  });
});
body{
  background-color:#CACACA;
}

.list-tag ul{
  display:flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

.list-tag ul li{
  border-bottom: 1px solid #FAFAFA;
}

.list-tag ul li.active{
  border-bottom: 1px solid #0f0f0f;
}

button{
  padding:5px 10px;
  border:none;
  background:transparent;
  boder-bottom:1px solid red;
  cursor:pointer;
}

button:focus{
  outline:none;
  Box-shadow:none;
}

.content{
  margin-top:20px;
}

解决方法

我不会将下边框放在li-element上,因为它永远不会具有焦点状态,这是一个将边框应用于按钮本身的示例。也许这对您有用:

$(document).ready(function(){
    $('.list-content').css('display','none');
    $('.all').show();
    $('button').on("click",function(){
        let target = $(this).data('target');
      let content = $('.list-content').data('content');
      
      console.log(target);
      
      $('li#' + target).addClass('active');
      $('.list-content').hide(); 
      $('.' + target).show();
  });
});
body{
  background-color:#CACACA;
}

.list-tag ul{
  display:flex;
  list-style: none;
  padding: 0;
  margin: 0;
}



button{
  padding:5px 10px;
  border:none;
  background:transparent;
  border-bottom:1px solid #FAFAFA;
  cursor:pointer;
}

button:focus{
  outline:none;
  box-shadow:none;
  border-bottom: 1px solid #0f0f0f;
}

.content{
  margin-top:20px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div class="list-tag">
      <ul>
        <li id="all">
          <button data-target="all"> All</button>
        </li>
        <li id="tech">
          <button data-target="tech">Tech</button>
        </li>
        <li id="industry">
          <button data-target="industry">Industry</button>
        </li>
        <li id="edu">
          <button data-target="edu">Education</button>
        </li>
      </ul>
    </div>

    <div class="content">
      <div class="list-content all" id="all">Lorem ipsum All.</div>
      <div class="list-content all" id="all">Lorem ipsum All.</div>
      <div class="list-content all" id="all">Lorem ipsum All.</div>
      <div class="list-content all" id="all">Lorem ipsum All.</div>
      
      <div class="list-content tech" id="tech">Lorem ipsum Tech.</div>
      <div class="list-content tech" id="tech">Lorem ipsum Tech.</div>
      <div class="list-content tech" id="tech">Lorem ipsum Tech.</div>
      <div class="list-content tech" id="tech">Lorem ipsum Tech.</div>
      
      <div class="list-content industry" id="industry">Lorem ipsum Industry.</div>
      <div class="list-content industry" id="industry">Lorem ipsum Industry.</div>
      <div class="list-content industry" id="industry">Lorem ipsum Industry.</div>
      <div class="list-content industry" id="industry">Lorem ipsum Industry.</div>
      
      <div class="list-content edu">Lorem ipsum Edu.</div>
      <div class="list-content edu">Lorem ipsum Edu.</div>
      <div class="list-content edu">Lorem ipsum Edu.</div>
      <div class="list-content edu">Lorem ipsum Edu.</div>
    </div>

请注意:在您的原始代码中,按钮的“边框底部”有错字“底部”

,
$(document).ready(function(){
    $('.list-content').css('display',function(){
        let target = $(this).data('target');
      let content = $('.list-content').data('content');
      
      console.log(target);
      $('li.active').removeClass('active'); // You need to add this line so that it can remove border from active item.
      $('li#' + target).addClass('active');
      $('.list-content').hide(); 
      $('.' + target).show();
  });
});
,

您需要在单击其他按钮时从上一个li中删除活动的类。

想到这两种方法。

    $('.list-content').css('display',function() {
        let target = $(this).data('target');
        let content = $('.list-content').data('content');

        console.log(target);

        // Add one of these
        // 1. $('li.active').removeClass('active') OR 
        // 2. $(`li:not(#${target})`).removeClass('active')
        $('li#' + target).addClass('active');
        $('.list-content').hide(); 
        $('.' + target).show();
    });
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?