我有一个包含50个元素的列表(不是固定值)
<div style="width:465px;">
<ul>
<li>aaa<li>
<li>aaa<li>
<li>aaa<li>
<li>aaa<li>
....
<li>aaa</li>
</ul>
</div>
ul在css中隐藏了溢出....我想用jquery获取ul的宽度。我在jquery中使用了width()来获取ul,但是在IE7中我获得了465,在另一个现代浏览器中我获得了更大的值(即1549)。这是核心。我该怎么办?
答案 0 :(得分:0)
在IE7中,你的宽度是以字符串形式返回的,而不是在IE上解析,我认为
尝试类似
的事情var w = $("ul").width();
if ($.browser.msie && parseInt($.browser.version, 10) <= 6) {
w = parseFloat(w);
}
或者你可以缩短它oo
var w = ($.browser.msie && parseInt($.browser.version, 10) <= 6) ?
parseFloat($("ul").width()) : $("ul").width();
或者真的很短并且可能真的不会伤害太多,:P
var w = parseFloat($("ul").width());