jQuery获取容器的实际宽度去实现一些简单的动画效果,已是众多网站青睐的手法。
近日一同事问我怎么jQuery获取容器宽度是NaN值?我看了一下他获取容器宽度的写法:
parseInt($('div').css('width'))
我改成
$('div').css('width')
打印获取的值,结果是
auto
怪不得转整型的时候变成了NaN,根本就没有取到容器的实际宽度,而是取到了CSS里的设置值!改成:
$('div').width()
问题解决,而且取到的值是整型,省了parseInt
函数。
虽然大多数时候
$('div').css('width')
获取的值都是实际宽度值,但经过测试,有时候也会有误差,甚至不同浏览器又不同的结果。而最保险的还是$('div').width()
写法比较靠谱!