Javascript 响应边距调整
我想让我的元素均匀地调整它们的边距,这样它们就能填满页面。我尝试使用jquery将页面宽度转换为一个值,但没有成功Javascript 响应边距调整,javascript,jquery,html,css,navigation,Javascript,Jquery,Html,Css,Navigation,我想让我的元素均匀地调整它们的边距,这样它们就能填满页面。我尝试使用jquery将页面宽度转换为一个值,但没有成功 var margen = $(window).width() $(document).ready(function () { $('#FixedMenu *').animate({ 'margin-left': 'margen/6' }); }); 我对您的JSFIDLE做了一些更新,您可以在这里看到: 我改变的是: 一, 您找到了屏幕的宽度:
var margen = $(window).width()
$(document).ready(function () {
$('#FixedMenu *').animate({
'margin-left': 'margen/6'
});
});
我对您的JSFIDLE做了一些更新,您可以在这里看到: 我改变的是: 一, 您找到了屏幕的宽度:
var screenWidth = $(window).width();
二,
您找到了固定菜单子元素的总宽度
var widthOfChilds = 0;
$('#FixedMenu > *').each(function() {
widthOfChilds += $(this).outerWidth( true );
});
三,
从屏幕大小中减去子元素的总宽度,您将获得子元素周围的“自由”宽度。
其中有六个,但在右边最后一个之后需要空间,所以将“自由”宽度除以child数+1
var newmargin = (screenWidth - widthOfChilds)/7;
$('#FixedMenu *').animate({
'margin-left': newmargin
});
我希望有帮助!:) 我不知道你为什么要计算margen/6,但是看看这个,也许它会帮助你做完全相同的事情,你在我之前到达那里,^现在你正在传递一个字符串,正如它被引用的一样,任何被引用的东西都是一个字符串。只需删除
'margen/6'
周围的引号,您就非常聪明!我不可能想到这一点!