Javascript 调整大小时重新计算函数内的变量
我有一个打开和关闭导航覆盖的功能,它在标题下滑动。它可以完美地点击,但是如果我打开导航,然后调整窗口大小,导航和标题之间会出现一个空格。这是因为当我单击导航打开时,会计算标题的高度,然后将其添加到导航顶部以偏移它。但是标题的大小不会在调整大小时重新计算。我该怎么做?我知道我甚至可以在函数上添加一个resize,但我不希望函数在resize上运行,我只希望重新计算页眉的高度。谢谢Javascript 调整大小时重新计算函数内的变量,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个打开和关闭导航覆盖的功能,它在标题下滑动。它可以完美地点击,但是如果我打开导航,然后调整窗口大小,导航和标题之间会出现一个空格。这是因为当我单击导航打开时,会计算标题的高度,然后将其添加到导航顶部以偏移它。但是标题的大小不会在调整大小时重新计算。我该怎么做?我知道我甚至可以在函数上添加一个resize,但我不希望函数在resize上运行,我只希望重新计算页眉的高度。谢谢 jQuery("#button").click(function(){ var nav = jQuer
jQuery("#button").click(function(){
var nav = jQuery("#nav_overlay");
var head_h = jQuery("#head_fixed").outerHeight(true);
jQuery(nav).css("top", head_h);
jQuery(nav).toggleClass('width_pad');
});
我自己想出来的。我必须在函数外部声明变量,以便在另一个函数中访问它们,然后重新计算它们。给你
var nav = jQuery("#nav_overlay");
var head_h = jQuery("#head_fixed").outerHeight(true);
jQuery("#button").click(function(){
var nav = jQuery("#nav_overlay");
var head_h = jQuery("#head_fixed").outerHeight(true);
jQuery(nav).css("top", head_h);
jQuery(nav).toggleClass('width_pad');
});
jQuery(window).resize(function(){
var head_h = jQuery("#head_fixed").outerHeight(true);
jQuery(nav).css("top", head_h);
});