[英]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"> » </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"> » </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"> » </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 <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.