JQuery:在窗口调整大小时更改body css属性

时间:2013-02-21 22:51:47

标签: javascript jquery html css

我正在尝试让我的网站在更改窗口大小时缩放其宽度。

JQuery的:

$(window).resize(function() {
    var w = $("body").width();
    if(w-810 < 0) {
        $("body").css("Left","0px");
    }
    else {
        var width = w.toString() + "px";
        $("body").css("Left",width); 
    }
});

CSS:

body {
background-color: #eeeeee;
position: relative;
left: 20%;
}

HTML:

<script src="scripts\jquery.min.js" type="text/javascript"></script>
<script src="scripts\myJavascript.js" type="text/javascript"></script>
....
<body class="body">

我注意到的一件事是,如果我按类选择主体(将jquery更改为“#body”),则宽度总是默认为0px。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

如果您想通过类获取body元素,则必须使用'.body'选择器。如果您想获取带有ID的元素,请使用'#body'

尝试将CS​​S放在小写中,最好将对象作为参数传入。此外,还要尝试“缓存”body元素,以防止对DOM树进行多次不必要的查询:

var body = $('.body');

$(window).resize(function() {
    var w = body.width();

    if (w-810 < 0) {
        w = "0";
    }

    body.css({ "left" : w + "px" });
});

答案 1 :(得分:0)

正文等级为'.body',而不是'#body'