Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在使其可见之前,我如何知道div的高度?_Jquery_Html_Css_Dynamic_Jquery Animate - Fatal编程技术网

Jquery 在使其可见之前,我如何知道div的高度?

Jquery 在使其可见之前,我如何知道div的高度?,jquery,html,css,dynamic,jquery-animate,Jquery,Html,Css,Dynamic,Jquery Animate,我有一个幻灯片打开可见/幻灯片关闭隐藏div 通过设置div高度的动画()可以实现该效果 问题是div由多个内容(不同的文本段落)共享,而这些内容的高度在前面是未知的 那么,当我放入这样的内容时,我如何知道div的高度是多少,这样我就可以通过动画('height':'-px')来滑动打开div?只需使用slideDown(),您就不需要计算高度了 你唯一能做的另一种方法(但我不知道你的具体情况)是clone()元素并将其附加到文档中,将其高度设置为auto,然后获取该元素的高度() var cl

我有一个幻灯片打开可见/幻灯片关闭隐藏div

通过设置div高度的动画()可以实现该效果

问题是div由多个内容(不同的文本段落)共享,而这些内容的高度在前面是未知的

那么,当我放入这样的内容时,我如何知道div的高度是多少,这样我就可以通过动画('height':'-px')来滑动打开div?

只需使用
slideDown()
,您就不需要计算高度了

你唯一能做的另一种方法(但我不知道你的具体情况)是
clone()
元素并将其附加到文档中,将其
高度设置为
auto
,然后获取该元素的
高度()

var cloned = $('#some-element').clone();

cloned.css({ position: 'absolute', left: '-9999px', height: 'auto' });

var height = cloned.height();

cloned.remove();

以前对我有效的一个技巧是将元素的不透明度设置为非常低的值,如
0.01
。这将在元素上执行
显示
,但如果不透明度足够低,则在页面上几乎看不到。

这存在问题,例如,它将填充渲染元素所需的空间。您也可以使用
可见性:hidden