jquery - 滑动切换和改变字形

标签 jquery html css slidetoggle

这是我的第一个元素,也是我在这里的第一篇文章,所以请放轻松 ;)

jQuery 是我努力的方向。我想要一个带有向下箭头的按钮,以允许用户滑出更多信息,当我单击它时,它应该将该字形图标更改为向上。所以他们知道如何隐藏信息。

这是我目前拥有的:

HTML:

  <section id="about">
    <a name="about"></a>
      <div class="container">
       <h2>Über</h2>
        <p class="topDist">Hier steht erklärender Text über uns.</p>

     <a href="javascript:return false;" id="button" class="btn btn-primary  
     btn-lg">Mehr<i class="glyphicon glyphicon-menu-down"></i></a>

    <div id="hidden_content">Hier steht die detallierte Beschreibung. Dieser Text wird erst nach einem Klick auf den Button eingeblendet.</div>
     </div>
  </section>

jQuery

        $(document).ready(function(){
        $("#button").click(function(){
            $("#hidden_content").slideToggle("slow");
        });
    });

        $('#button').click( function(){
            $(this).find('i').toggleClass('glyphicon-menu-down').toggleClass('glyphicon-menu-up');
        });

我找到了这个 How do I change a glyphicon upon clicking it in Bootstrap 3.2?并尝试将它用于我的元素。它工作了一次,但后来只有 slidetoggle 工作了,而改变的 glyphicon 没有。

我真的需要你的帮助。 非常感谢!

最佳答案

您的 HTML 无效。变化:

<span i class="glyphicon glyphicon-menu-down"></i></span>

<span><i class="glyphicon glyphicon-menu-down"></i></span>

除此之外,您还可以将 click 监听器和 toggleClass 组合到一个调用中。

$(function() {
    $("#button").click(function() {
        $("#hidden_content").slideToggle("slow");
        $(this).find('i').toggleClass('glyphicon-menu-down glyphicon-menu-up');
    });
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<section id="about">
  <a name="about"></a>
  <div class="container">
    <h2>Über</h2>
    <p class="topDist">foo</p>
    <a href="javascript:return false;" id="button" class="btn btn-primary btn-lg">
      more
      <span><i class="glyphicon glyphicon-menu-down"></i></span>
    </a>
    <div id="hidden_content">bar</div>
  </div>
</section>

关于jquery - 滑动切换和改变字形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39508700/

相关文章:

javascript - 刷新页面并调用同一个 anchor

html - 创建一个包含多种语言文本的 aspx 文件

html - 即使没有文本,如何保持段落高度?

html - 如何处理元机器人中的多个值?

jquery - 通过 jQuery 将 CSS 应用于 Javascript 调用的 div?

javascript - 使用 Chartist.js 在条形图中显示条形内的文本

jquery - Trent Richardson TimePicker 显示日期和时间

javascript - 在 JQUERY 中创建 HTML 后,Jquery 方法不起作用

html - 我的媒体查询没有生效

css - 如何正确放置页脚?