javascript - 单击时不显示直通线?

标签 javascript jquery html

我试图在单击每种成分时在其中划一条线。使用下面的代码,当我单击它时没有显示任何行。

$(document).ready(function(){
  $(".recipe .ingredients .ing li").click(function(){
    $(this).css("text-decoration", "line-through");
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="recipe">
  <div class="ingredients">
    <h3> Ingredients </h3>
    <ul class="ing">
      <li> 1 ripe banana </li>
      <li> 1/2 ripe avocado </li>
      <li> 1 tbsp cocoa powder </li>
      <li> 4 cups chocolate almond milk </li>
      <li> 4 pitted dates </li>
    </ul>
  </div>
</div>

最佳答案

您可能希望切换line-through

如果是这样,设置样式指令会更简单......

.ing li.linethrough {
    text-decoration: line-through
}

...并使用.toggleClass():

$(document).ready(function(){
    $(".ing li").click(function() {
        $(this).toggleClass('linethrough');
    });
});

即使您不想要切换操作,使用 CSS 指令重新设置样式仍然是有利的。

并按照其他人所说修复 HTML

关于javascript - 单击时不显示直通线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31946096/

相关文章:

javascript - 单击事件不会在新创建的 li 标签上触发

html - 删除由鼠标单击引起的框架

javascript - 选择下拉菜单并为其选项设置样式

html - 我如何使我的 slider 框更大?

javascript - 简单的分级系统。不断收到错误 'undefined' 。我做错了什么?

javascript - 动态添加事件到 div

javascript - 不更新 javascript 文件

javascript - wrapAll() 正在创建双倍的 div?

javascript - 使用 jQuery 在 HTML 中选择下拉列表中的选项更改时隐藏 div

javascript - Bootstrap 日期选择器依赖项