如何获取隐藏父元素的元素大小?

时间:2010-12-20 08:56:59

标签: jquery html

1.4.4返回隐藏元素的大小,但是另一个隐藏元素中的元素呢? getWidth有没有更好的解决方案?

    <script type="text/javascript">
        function getWidth(element){
            var parent = element.parent();
            $('body').append(element);
            var width = element.width();
            parent.append(element);
            return width;
        }

        $(function(){
            var width = $("#foo").width(); 
            console.log(width); //0
            width = getWidth($("#foo"));
            console.log(width); //ok
        });
    </script>
    <div style='display:none'>
        <div style='display:none' id='foo'>bar</div>
    </div>

1 个答案:

答案 0 :(得分:1)

隐藏元素时,其宽度可能因样式而异。当隐藏元素位于另一个隐藏元素中时,结果可能会再次变化。但是,Jquery代码非常简单:

$('#foo').parent().width()

这将抓住foo的父div,然后抓住它的宽度,但我无法保证它会获得该元素的未隐藏的自然宽度。希望有所帮助!