4

我以前使用过 Easy Slider jQuery 插件,直到现在才遇到问题。而且问题很奇怪。看看这个主页 http://bit.ly/HKiWY6

该页面将弹出一个显示两个值的警报:

$("#slider").width()

$("#slider3").width()

我已经在 css 中设置了两者的值。一个是 710 像素,一个是 700 像素。

如果您在 IE9 中运行,它会显示 $(window).width() 的默认值,而不是两者的默认值,无论当前的窗口或文档宽度是什么。FF 和 Chrome 正确返回。这是为什么?

4

2 回答 2

10

尝试使用 outerWidth,并确保将其包装在 windows.ready 事件侦听器中,以确保在计算宽度之前正确呈现所有 DOM 元素

$("#slider3").outerWidth()
于 2012-04-16T08:26:55.517 回答
6

过去,当我在某个事件完全冒泡之前使用 jQuery 的 width()/height()/offset().top/.left 等时,我遇到了问题。看看setTimeout(function() { alert($('#slider').width()); }, 0);有没有效果。这是一个便宜的 nextTick() 技巧,可能正是您所需要的。

于 2012-04-16T08:21:46.870 回答