好吧,所以我正在尝试制作水平网站,但是当我尝试获取导航的offsetWidth时,它会返回远高于真实宽度的值。有问题的设计可以找到here。该页面的CSS是here和JS here。offsetWidth返回不正确的值
非常感谢任何人谁可以工作了这一点:)
好吧,所以我正在尝试制作水平网站,但是当我尝试获取导航的offsetWidth时,它会返回远高于真实宽度的值。有问题的设计可以找到here。该页面的CSS是here和JS here。offsetWidth返回不正确的值
非常感谢任何人谁可以工作了这一点:)
这是你的页面看起来像只是一瞬间应用CSS之前: http://img571.imageshack.us/img571/1047/shotjt.png。那时候#projects nav的宽度就是客户端屏幕的宽度。
有两种解决方法:
出人意料的是,它在IE :)
谢谢:)最后,我使用了窗口加载事件而不是domready – 2012-08-13 13:52:07
这是因为通过利润创造的空间计算好,并有一个右边距最后一个rticle。这是固定的脚本。
domready(function() {
var projectsContainer = qwery('#projects')[0];
var projects = qwery('.project');
var projectsNav = qwery('#projects nav')[0];
var pMargin = 40;
var pnW = projectsNav.offsetWidth+cMargin;
for(p in projects) {
projects[p].style.marginRight = pMargin+'px';
}
projectsContainer.style.width = (projects.length*(projects[0].offsetWidth+pMargin))+pnW+'px';
});
另一种解决方案是设置体余量为0的时候,通常没有宽度设置与主体余量是不变,渲染可以通过占8个像素到每个侧(左和右的16个像素被关闭)的身体标签。
罗德里戈。
你可以做一些console.log-ing,看看页面加载的值是什么?因为我加载了你的页面,并且看到这个框太宽,但是如果我在页面加载后运行该功能,它可以正常工作。另外,在pnW变量的末尾添加一个+40(以考虑边距) – 2012-08-13 04:29:39
您的链接已损坏 – GarethOwen 2013-06-17 11:33:36