我有一个菜单div将菜单列表放入其中



// here is the javascript/jquery

$('#menu-tab').click(function(){
    $("#menu").slideToggle("normal");
});

/* for the css */

    #menu {
       width: 220px;
       border: 2px solid #004990;
       float: right;
       margin-right: 15px;
       margin-top: -52px;
    }

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>

    <!--menu-->
		<a href="#"><div id="menu-tab">Menu</div></a>
		<div id="menu">
			<ul>
				<li><a href="#">a</a></li>
				<li><a href="#">b</a></li>
				<li><a href="#">c</li>
			</ul>
		</div>





因为margin-top:-52px;(我控制页面在菜单中的位置),因此每次我单击菜单选项卡时,#menu将从-52px滑动。如何让它从0px滑落?

最佳答案

您是否曾尝试在动画制作之前修改样式?在滑动之前,将边距顶部设置为零。

$('#menu-tab').click(function(){
    $("#menu").css("margin-top","0px"); //this should set your menudiv to margin-top:0px
    $("#menu").slideToggle("normal");
});

关于javascript - jQuery slideToggle的位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1129474/

10-13 01:40