jquery - 如何切换显示以显示在 if-else 语句中?

标签 jquery html css font-awesome

我试图在点击时切换圆圈,这样圆圈检查就会出现,圆圈就会隐藏,到目前为止还没有弄清楚。我已经在 CSS 中有了悬停部分,其中圆圈消失了,复选标记出现了。

HTML

<p class="reme">
  <a href="#" class="check">
    <i id="i" class="far fa-circle"></i>
    <i id="u" class="fas fa-check-circle"></i>
    . 
  </a>
  &nbsp;&nbsp;&nbsp;Remember Me
</p>

CSS

#i {
  color: #2ECC71;
  background-color: white;
}
#u {
  color: #2ECC71;
  background-color: white;
}
/*
.check:hover #i,
.check #u {
  display: none;
}
.check:hover #u {
  display: inline;
}
*/

JQUERY

/*
$(".check").click(function(){
  if ( $(".check").hasClass("fa-circle")  {
    $(".check").removeClass("fa-circle");
  } else {
    $(".check").toggleClass("fa-check-circle fa-circle");
  }
});

$(".check").click(function() {
  if ( $( this ).find('i').hasClass( "fa-circle" ) ) {
    $( this ).find('i').removeClass( "fa-circle" );
    $( this ).find('i').addClass( "fa-circle-check" );
  } else {
    $( this ).find('i').removeClass( "fa-circle-check" );
    $( this ).find('i').addClass( "fa-circle" );
  }
});
*/
$(".check").click(function(){
  $(".check").toggleClass("fa-circle fa-circle-check");
});
$(".check").click(function(){
  $(".check").show("fa-circle-check");
});
$(".check").hasClass(function(){
  $(".check").hide("fa-circle-check");
});

最佳答案

要达到预期结果,请使用 toggle 而不是 toggleClass

  1. 使用id隐藏图标

    $("#u").hide();

  2. 使用 id -i 和 u 切换图标 $(".check").click(函数(){ $("#u").切换(); $("#i").切换(); });

供引用的工作代码示例-
codepen - https://codepen.io/nagasai/pen/VojwbJ

$("#u").hide();
$(".check").click(function(){
  $("#u").toggle();
  $("#i").toggle();
});
#i {
  color: #2ECC71;
  background-color: white;
}
#u {
  color: #2ECC71;
  background-color: white;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.9.0/css/all.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<p class="reme">
  <a href="#" class="check">
    <i id="i" class="far fa-circle"></i>
    <i id="u" class="far fa-check-circle"></i>
    . 
  </a>
  &nbsp;&nbsp;&nbsp;Remember Me
</p>

关于jquery - 如何切换显示以显示在 if-else 语句中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57188995/

相关文章:

html - 字体在 Windows 中看起来完全不同

javascript - Matter.js 创建一个旋转平台

javascript - jQuery 动画后偏移量不改变

jquery - 无法使用 thickbox jquery 使图像显示全尺寸

javascript - 如何在滚动中为 div 设置动画?

javascript - 如何检查两个不同类别的所有复选框

javascript - 如何固定切换标签内容?

css - Bootstrap 3 - col-md-2 不渲染..?

css - 是否可以在 Styled-Component 中使用 Style System 的断点?

jquery - IE滑动面板的小问题