我有一个容器(thetext1),设置高度为360px."thetext1"包含两个div--一个在左边,一个向右浮动 - 两个内容都是通过ajax调用传递的.
有时候这些div中的一个或另一个中的内容超过360px,因此我想相应地增加text1的高度.
我的测试代码
newhgt = $('#thetext1').find('div.rhs').css("background", "pink").height();
Run Code Online (Sandbox Code Playgroud)
返回0 - (我的选择器是正确的,因为目标div是完全粉红色的!).
为什么是这样?我知道 - 从本网站以前帖子的答案 - 解决方案是添加溢出:隐藏thetext1,但我想理解为什么我试图获得rhs和lhs div的高度失败.
Gaz*_*zer 32
确保代码在$(window).load [not $(document).ready]内
$(window).load(function () {
newhgt = $('#thetext1').find('div.rhs').css("background", "pink").height();
});
Run Code Online (Sandbox Code Playgroud)
我有同样的问题,我注意到一件事,当你调用.height()时,div需要是可见的.
但是,即使div是可见的,这个div的父母也需要可见. 所以你必须保证父母div是可见的(显示!=无)
写一个$('#div').parent().show();会让父母看得见,你可能需要一个人parent().show();
只要您检查元素是否先加载,您仍然可以使用$(document).ready.我选择了
$("_element name/id_").load(function() {
$(this).height();
});
Run Code Online (Sandbox Code Playgroud)
我最初在这里找到了解决方案:http: //www.fortwaynewebdevelopment.com/jquery-width-or-height-always-returns-0-fix/
并选择在第一个响应中使用答案.
| 归档时间: |
|
| 查看次数: |
41722 次 |
| 最近记录: |