JQ如何获取动态元素的高度?

草原上的奶牛 2015-07-30 10:35:49
<div class='myhtnl'></div>

div中是通过动态JSON请求获取内容,希望通过
$('.myhtnl')[0].scrollHeight 获取真实高度,得到高度是0,JQ要如何获取动态元素的高度呢?
...全文
2044 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
草原上的奶牛 2015-08-03
  • 打赏
  • 举报
回复
它是json数据调用出来的。也就是初始化的时候div没有高度,是空的。
-妖孽 2015-08-03
  • 打赏
  • 举报
回复
该不会是浏览器兼容问题吧?你换个浏览器试试
草原上的奶牛 2015-08-03
  • 打赏
  • 举报
回复
自己处理了,只能用监听类去处理了。
sydhr_1994 2015-08-03
  • 打赏
  • 举报
回复
引用 5 楼 romy2008 的回复:
它是json数据调用出来的。也就是初始化的时候div没有高度,是空的。
你把获取高度的语法写在 ajax回调中 生成这个元素的后面
Braska 2015-07-30
  • 打赏
  • 举报
回复
div里面没有内容 或者没设置style时 高度默认为auto 即为0
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title></title> 
<style type="text/css"> 
</style> 
<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.8.3/jquery.min.js"></script>
<script language="javascript"> 
var data = [{content:"<div class='myhtnl'>a</div>"},{content:"<div class='myhtnl'></div>"},{content:"<div class='myhtnl' style='height:100'></div>"}];
$(function(){
	var html = "";
	for(var i = 0; i < data.length; i++){
		html += data[i].content;
	}
	$('body').append(html);
	
	alert($('.myhtnl').eq(0).height() +"#####"+ $('.myhtnl').eq(1).height() +"#####"+ $('.myhtnl').eq(2).height());
})

</script> 
</head> 
<body></body>
</html>
草原上的奶牛 2015-07-30
  • 打赏
  • 举报
回复
也是获取不到的。我试过了。
Braska 2015-07-30
  • 打赏
  • 举报
回复
$('.myhtnl').eq(0).height()
sydhr_1994 2015-07-30
  • 打赏
  • 举报
回复
首先你确定你的div有高度?? 你可以 var oDiv = document.getElementById("myhtnl"); console.log(oDiv.offsetHeight);

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧