[英]how to fix a document.body is null-error
我有一个document.body在我的javascript中是null错误因为我使用:
$(window).width()
作为分配给我的变量的值
$(document).ready(function(){});
我非常感谢任何可以帮助我的人。
亲切的问候
编辑:抱歉,如果这一切都不清楚。 我有一个演示: http : //www.wpmonk.com/demo/hypowired首先主题将加载但后来变为白色(因为错误)但当你重新加载时,你可以看到整个主题,因为他知道$(window).width()的值
我正在使用此代码将布局居中(css不可能,因为左边需要有宽度。)
function positioneerElement(){
$breedte = (document.body.clientWidth - 1124) / 2;
$('#bg_left').css({
'width': $breedte
});
$('.container').css({
'margin-left': $breedte
});
}
我在load函数中调用函数positioneerElement()
。
很抱歉,如果不清楚我虽然没有必要在这里放置演示,也不需要代码。 不过,我要感谢那些正在努力帮助的人们!
我同意outis - 我们需要更多代码。
那说:
一个建议:
如果将positioneerElement
函数放在$(document).ready函数中,问题是否仍然存在? 我想知道浏览器是否在加载文档之前评估document.body。
$(document).ready(function() {
function positioneerElement(){
$breedte = (document.body.clientWidth - 1124) / 2;
$('#bg_left').css({
'width': $breedte
});
$('.container').css({
'margin-left': $breedte
});
// your other code, including
positioneerElement();
});
在包含<body>
标记(例如,在ready回调中)和/或使用Standards Mode doctype声明后,确保只调用$(window).width()
。 无论如何你应该这样做:Quirks Mode很糟糕。
问题是,要在Quirks模式下读取视口大小,jQuery必须查看document.body.clientWidth
而不是document.documentElement.clientWidth
。 如果尚未启动<body>
,则不存在document.body
节点。
你必须包括jquery.js,而不是jquery.min.js它看起来像它中的一些bug这对我有用
好吧,根据你给我的信息,可能是身体还没有正确加载。 请在此处查看更多详情: http : //www.coderanch.com/t/122834/HTML-JavaScript/document-body-null-or-not#606782
我会说更多,但我也同意你需要发布更多代码供我们调试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.