Jquery 发生slideDown()/slideUp()时,是否可以拉伸背景高度
因此,我制作了一个类似手风琴的隐藏菜单,当使用Jquery 发生slideDown()/slideUp()时,是否可以拉伸背景高度,jquery,html,css,Jquery,Html,Css,因此,我制作了一个类似手风琴的隐藏菜单,当使用.slideUp()和.slideDown()单击父级li时,下面会出现一个子菜单。但当子菜单向下滑动时,整个菜单将移动到包含div的背景的设置高度上。但是,我不能在JQuery代码中为.slideDown()/.slideUp()部分添加.animate(),因为并非所有子菜单的组合高度都相同 演示: 我想我也会把JQuery放在这里(如果你也想在这里看到其他代码,请询问,我会编辑它): 你可以用一些CSS轻松地解决这个问题 说明:从div.bac
.slideUp()
和.slideDown()
单击父级li
时,下面会出现一个子菜单。但当子菜单向下滑动时,整个菜单将移动到包含div
的背景的设置高度上。但是,我不能在JQuery代码中为.slideDown()
/.slideUp()
部分添加.animate()
,因为并非所有子菜单的组合高度都相同
演示:
我想我也会把JQuery放在这里(如果你也想在这里看到其他代码,请询问,我会编辑它):
你可以用一些CSS轻松地解决这个问题 说明:从
div.backing
和.navbar
的top
中删除硬编码的高度,在.backing
中添加一些填充
,以便在.navbar
上方和下方显示一些背景。现在,元素的背景将随着其内容而增长/收缩。根据您的喜好设置填充值
$(document).ready(function () {
$("#topnav a").click(function () {
var el = $(this).parent();
if (el.hasClass('active') && $(this).next().is(':visible')) {
var active = el.siblings('.active');
$(this).next().slideUp();
}
else if (el.hasClass('active') && !$(this).next().is(':visible')) {
var active = el.siblings('.active');
$(this).next().slideDown();
}
else if (!el.hasClass('active')) {
$(this).next().slideDown();
var active = el.siblings('.active');
active.children('ul:first').slideUp();
active.removeClass('active');
el.addClass('active');
}
});
});