jquery,margin-top取决于$(window).height()

时间:2011-08-10 10:24:04

标签: jquery css

我有一个div容器,它的上边距应设置为$(window).height()的依赖项,所以首先我尝试过这样的事情:

        $("div#outerstart").css("margin-top",$(window).height() -805+"px");

它工作正常,但保证金最终不应该是负数,所以我尝试了这个:

        $("div#outerstart").css("margin-top",function () {
        if ($(window).height() < 805) {
            0+"px"  
        } else {
            $(window).height() -805+"px"
        }
    });

 if ($(window).height() < $(document).height()) {...

但它没有显示效果,并且未设置margin-top。你有什么建议吗?

2 个答案:

答案 0 :(得分:3)

让我们将您的代码更改为使用函数

中的return关键字
$("div#outerstart").css("margin-top",function () {
    if ($(window).height() < 805) {
        return "0px";  
    } else {
        return ($(window).height() -805)+"px";
    }
});

答案 1 :(得分:3)

更简单的解决方案是使用Math.max而不是匿名函数:

$("div#outerstart").css("margin-top", Math.max(0, $(window).height()-805)+"px");