如何获取隐藏父元素的元素大小? [英] How get size of element with hidden parent?

查看:70
本文介绍了如何获取隐藏父元素的元素大小?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

 < script type =text / javascript> 
函数getWidth(element){
var parent = element.parent();
$('body')。append(element);
var width = element.width();
parent.append(element);
返回宽度;
}

$(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>


解决方案

当隐藏元素时,它们的宽度可能会有所不同你的造型。当隐藏元素位于另一个隐藏元素中时,结果可能会再次变化。但是,Jquery代码非常简单:

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

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


1.4.4 return size of hidden element, but what about element in another hidden element? Is there any better solution then 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>

解决方案

When elements are hidden, their width may vary depending on your styling. And when a hidden element is inside another hidden element, results could vary again. However, the Jquery code is quite straightforward:

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

This will grab foo's parent div, then grab its width, but I can't guarantee it will get the element's unhidden natural width. Hope that helps!

这篇关于如何获取隐藏父元素的元素大小?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆