两个变量如何都是一个JQuery对象,但.css属性不适用于其中一个?

时间:2012-06-07 18:01:35

标签: javascript jquery

在以下代码中,thebodyapp.body如何都是JQuery对象,但在.css上设置thebody属性有效,但对{{{{}}无效1}}?

app.body

2 个答案:

答案 0 :(得分:6)

该代码可能位于页面的head部分。因此,当执行行app.body = $('body');时,正文尚不存在。但是之后你打电话给app.init();可能在DOMReady上,所以身体存在于那一点。当您运行var thebody = $('body');时,您将在集合中获得一个元素。

您可以通过检查app.body.length === 0时是否thebody.length === 1来验证这一点。

您应该将整个代码块移动到正文中,或移动到DOMReady回调中,如:

$(function(){

...

});

答案 1 :(得分:0)

尝试

app.body.html().css()

如果我的预感是正确的,那么你的jquery并没有选择app.body的dom,因此你需要将它翻译成html来选择它。