我正在构建一个餐厅菜单系统,通过点击选择的菜单可以滑过。使用jQuery动态更改窗口上的CSS resize使用jQuery
一切工作正常,但是,我现在试图使它动态调整窗口大小。
有这个巨大的困难,我的jQuery是磨磨蹭蹭好,但碰了壁...
jQuery的
var $mmenu = $('.menu__main');
if ($mmenu.length > 0) {
var $mnav = $('.menu__nav'),
$mnav_a = $mnav.find('a'),
m = parseInt($mnav.outerHeight(true), 10),
$contain = $mmenu.closest('.menu-container'),
h = 0,
l = 0;
$mmenu.not(':eq(0)').hide();
$mmenu.eq(0).addClass('active');
$mnav_a.eq(0).addClass('active');
$mmenu.each(function(z) {
var $this = $(this),
$mmenuHeight;
$(window).smartresize(function() {
$mmenuHeight = parseInt($this.outerHeight(true), 10) + m;
});
$this.css('height','auto');
$this.css({
zIndex: z+1,
position: 'absolute',
top: m + "px",
left: l,
height: $mmenuHeight + "px"
});
l = l - $this.outerWidth();
});
$(window).smartresize(function() {
$contain.height($mmenu.eq(0).height());
});
}
$(window).trigger("smartresize");
两个$(window).smartresize()
功能使用不当,我知道,所以任何对此的指导将不胜感激。第一个是设置单个菜单的高度,第二个是菜单容器的高度。
你有没有想过使用媒体查询,而不是jQuery来做到这一点? –
我有,但客户端可以完全控制菜单,包括存在的金额和内容。它需要是动态变化的东西 –