为什么我的100%宽元素变成30000px+宽时使用css3- mediaqueres .js

Why does my 100% wide element become 30000px+ wide when using css3-mediaqueries.js?

本文关键字:css3- mediaqueres js 100% 我的 元素 为什么 30000px+      更新时间:2023-09-26

下面是一个JSFiddle来说明这个问题:

http://jsfiddle.net/TKX9j/3/

(function($) {
    var foo = $('#foo');
    foo.css('width', "").css('width', foo.width());
    foo.text('This is '+foo.css('width')+' wide.');
})(jQuery);

正如你所看到的,我依赖于重置和获得元素的宽度,但我得到了一个巨大的数字。为什么?当我在左边设置onLoad时,它不会发生。No wrap - in <head>不相关。我等不及在我的生产代码中出现onLoad了。

我用这个:http://code.google.com/p/css3-mediaqueries-js/

这是因为浏览器还没有确定元素的宽度,所以它可能只是返回一些垃圾值。

如果可能的话,试着在CSS中设置一个默认的宽度,那么你将在onLoad事件之前得到这个大小