繁体   English   中英

单击按钮时如何添加CSS

[英]how to add css when button clicked

单击jQuery时如何添加css?

我想创建一个当我单击按钮时将其切换为隐藏我的div并将箭头旋转至90度,当再次单击时将其切换为显示我的div并将箭头旋转至-90度。

这是我尝试过的:

 $("#toogle_menu").click(function() { $("#jy_nav_pos_main").slideToggle("slow"), $("#toogle_menu").css({ transform: "rotate(-90deg)" }); }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="nav nav-tabs row margin_auto" id="jy_nav_pos_main" role="tablist"> <li>menu</li> </ul> <button id="toogle_menu" class="btn btn-light"> &raquo; </button> 

不用在每次单击中设置样式,而是切换$( "#toogle_menu" ).toggleClass( "toggled" )并在CSS中对该类进行样式设置

 $("#toogle_menu").click(function() { $("#jy_nav_pos_main").slideToggle("slow"), $("#toogle_menu").toggleClass("toggled") }); 
 .toggled { transform: rotate(-90deg); } 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="nav nav-tabs row margin_auto" id="jy_nav_pos_main" role="tablist"> ...... </ul> <button id="toogle_menu" class="btn btn-light"> &raquo; </button> 

尝试这个..

 var clicked = false; $("#toogle_menu").click(function() { var deg = clicked ? 0 : -90; $("#jy_nav_pos_main").slideToggle("slow"), $("#toogle_menu").css({ transform: "rotate("+deg+"deg)" }); clicked = !clicked; }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="nav nav-tabs row margin_auto" id="jy_nav_pos_main" role="tablist"> <li>menu</li> </ul> <button id="toogle_menu" class="btn btn-light"> &raquo; </button> 

尝试这个...

<style type="text/css">
    .nav{
        display: none;
    }
    .rotate{
        transform: rotate(90deg);
        -webkit-transform:rotate(90deg);
        -moz-transform:rotate(90deg);
        -o-transform:rotate(90deg);
        -ms-transform:rotate(90deg);
        transition: all 0.4s linear;
    }
    #clickBtn span{
        transition: all 0.4s linear;
    }
</style>
<button type="button" id="clickBtn">Click &nbsp;&nbsp;&nbsp;<span class="fa fa-angle-right"></span></button>
<ul class="nav nav-tabs row margin_auto" id="jy_nav_pos_main" role="tablist">
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
    <li>Item 5</li>
</ul>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $("#clickBtn").on('click',function(){
            $(this).find('span').toggleClass('rotate');
            $(".nav").slideToggle();
        });
    });
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM