1
<script>
    $(document).ready(function () {
        var footerheight = $('#footer').height();
        $('#footer').css('height', footerheight);
        $('#footer').css('marginTop', footerheight);
        $('#nonfooterinner').css('paddingBottom', footerheight);
    });
    $(window).bind("resize", function () {
        var footerheight = $('#footer').height();
        $('#footer').css('height', footerheight);
        $('#footer').css('marginTop', footerheight);
        $('#nonfooterinner').css('paddingBottom', footerheight);
    });
</script>

<body>
    <div id="nonfooterouter">
        <div id="nonfooterinner">
            body
        </div>
    </div>
    <div id="footer">
        xxx
    </div>
</body>

此脚本获取#footer div 的高度,并将其设置为内部主体包装(#nonfooterinner)的底部填充和#footer 的顶部边距。但是,#footer 的上边距必须是该数字的负值。如何将脚本中的变量“footerheight”转换为仅用于 marginTop 值的负数?

4

5 回答 5

2

jsFiddle 上的示例

只需将其设置为负数

$('#footer').css('marginTop', - footerheight);
于 2013-06-03T23:53:54.147 回答
2
var footerheight = $('#footer').height();

    $('#footer').css('margin-left', footerheight *-1);
于 2014-05-17T10:57:55.680 回答
0

您可以使用将字符串转换为 int parseInt()。请检查以下代码:

var footerheight = $("#footer").height();
var marginTop = parseInt(footerheight) * -1;
$("#footer").css("marginTop", marginTop + "px");
于 2013-06-03T23:53:45.920 回答
0
var footerheight = $('#footer').height();
footerheight =-Math.abs(footerheight);
于 2016-01-19T05:00:13.323 回答
0

要将任何值转换为正值,反之亦然:

var value = -500
if(value < 0) { 
  value = value*(-1)
}

或否定:

var value = 500
if(value > 0){
  value = value*(-1)
}
于 2018-12-11T18:51:25.987 回答