gpt4 book ai didi

javascript - $(document).width() 包括 ie8 中的滚动条

转载 作者:行者123 更新时间:2023-11-28 02:49:30 25 4
gpt4 key购买 nike

我有以下网页:

只有垂直滚动条而没有水平滚动条的高网页。因此,文档和窗口具有相同的宽度。

当我向 IE8 询问 $(document).width() 时,它返回包括垂直滚动条的视口(viewport)宽度。 FF 返回正确答案。

我不能为此使用 $('body') ,因为它返回与窗口对象相同的宽度(它以某种方式设置为 100%,因此当页面变小)。

怎样才能让IE8输出正确的值?提前致谢。

更新

我实际上对我的问题做了一些更多的测试。我发现当水平滚动条也变得可见时(因为窗口较小),IE8 确实获得了正确的大小。所以这让我的问题变得更加复杂,因为我无法设置一个丑陋的 if(IE8)-hack。

更新2

问题出在我的 CSS 和 jQuery 上。实际案例似乎有问题:我的 CSS 说:

body
{
overflow-y:scroll;
}

IE8 不将其视为正文的一部分,但 IE7 会将其视为正文的一部分。如何解决这个问题?调用 jQuery 进行修复?

最佳答案

我把这个问题交给了 jQuery 团队:http://bugs.jquery.com/ticket/8048 .

他们不认为这是一个错误。他们的建议是使用 $('body').width()。这确实适合我。

我还是觉得奇怪,IE8中的body调整到了滚动条,但是$(document).width()保持不变。我用过这个jsFiddle供测试用。它会导致同样的故障,但 jQuery 认为没关系,因为 W3C 没有对此做出任何说明...或者类似的东西。

关于javascript - $(document).width() 包括 ie8 中的滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4091107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com