【问题标题】:open/close icon - toggle div on click打开/关闭图标 - 单击时切换 div
【发布时间】:2015-09-15 12:45:38
【问题描述】:

我有一个汉堡菜单,可以根据需要下拉功能。 但是,我希望 3 行在点击时切换为十字形。

我知道如何在类之间切换,但到目前为止还没有奏效——我需要切换实际的 div 内容。 menu-btn 是汉堡包,我需要创建一个带有十字架的新 div(仍在尝试解决这个问题!) - 假设我们称该按钮为“menu-btn-cross”。所以在“按钮”点击时,我想在 menu-btn 和 menu-btn-cross 之间切换

任何帮助都会很棒。 到目前为止,这是我所拥有的:

.button {
  position: fixed;
  height: 41px;
  width: 80px;
  z-index: 900;
  right: 0;
}
.menu-btn {
  width: 30px;
  height: 30px;
  padding-left: 30px;
  padding-top: 7px;
  cursor: pointer;
  cursor: hand;
}
.menu-btn span {
  display: block;
  width: 30px;
  height: 3px;
  margin: 5px 0;
  background: #FFF;
  z-index: 99;
}
.menu-btn-cross {
  /*my cross will go here*/
}
<div class="button">
  <div class="menu-btn">
    <span>1</span>
    <span>2</span>
    <span>3</span>
  </div>
  <div class="menu-btn-cross"></div>
</div>

【问题讨论】:

  • 我已经添加了它,但我很确定我已经接近了完全错误的方式,这就是我没有发布它的原因。我想切换 div 而不是他们的类。谢谢
  • 您的意思是点击时您希望一个 div 显示而另一个 div 隐藏?
  • 是的 - 对不起 - 我本来可以这么说的!
  • 这个答案已经发布你试过这个 - (jsfiddle.net/BQUyT)
  • 那只显示和隐藏一个div,我要切换2个div。

标签: javascript css button toggle


【解决方案1】:

试试这个代码。

<script>
    $(function () {
        $('.menu-btn-cross').hide();
    })


    $('.button').click(function () {
        $('.menu-btn').toggle();
        $('.menu-btn-cross').toggle();
    })
</script>

【讨论】:

  • 感谢@Sheere Walker。我真的很高兴,因为它对你有用。
【解决方案2】:

来试试这个。添加了隐藏的类,在 div 上单击它会切换该类

小提琴:https://jsfiddle.net/uebnwb6w/

HTML

<div class="button">
            <div class="menu-btn">
                    <span>a</span>
                    <span></span>
                    <span></span>
             </div>

             <div class="menu-btn-cross hidden">
                 <span>test</span>
             </div>
</div>

CSS

.button {
    position:fixed;
    height:41px;
    width:80px;
    z-index:900;
}

.menu-btn {
    width: 30px;
    height:30px;
    padding-left:30px;
    padding-top:7px;
    cursor: pointer; cursor: hand;

}


.menu-btn span {
    display: block;
    width: 30px;
    height: 3px;
    margin: 5px 0;
    background: #FFF;
    z-index: 99;
}



.menu-btn-cross {

    <!--my cross will go here-->

}

.hidden
{
    display:none;
}
}

JQUERY

jQuery(function($){
             $( '.button' ).click(function(){
             $('.menu-btn').toggleClass('hidden');
             $('.menu-btn-cross').toggleClass('hidden');

             })
        })

【讨论】:

  • 这也很好 - 我选择了另一个纯粹是因为它是第一个。非常感谢您的帮助。
  • 没问题,很高兴能帮上忙
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-08
  • 2020-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多