元素的高度都是自动的,元素都在页面上渲染了,就是无法获取它的高度。
console.log()返回的永远是空字符串!
为什么??
对了,我要用js创建很多<div><img src=""></div>这样的结构。
现在的问题就是,我无法获取div的真实高度,因为图片还没有加载完。
元素的高度都是自动的,元素都在页面上渲染了,就是无法获取它的高度。
console.log()返回的永远是空字符串!
为什么??
对了,我要用js创建很多<div><img src=""></div>这样的结构。
现在的问题就是,我无法获取div的真实高度,因为图片还没有加载完。
$(document).ready(function () {
console.log(obj.offsetWidth); //这样可以得到用js创建或者直接写出来的元素宽度
console.log(obj.style.width); //这样只能得到js设置的元素宽度
});
下面是我写的demo,你可以试试
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#demo{
width:100px;
height:100px;
background-color:blue;
}
</style>
</head>
<body>
<div id="demo">aaa</div>
</body>
<script>
window.onload = function(){
var div = document.createElement('div');
div.innerHTML = 'aaaa';
// div.style.width = '100px';
div.style.background = 'red';
document.body.appendChild(div);
console.log(div.offsetWidth);
console.log(div.style.width);
var demo = document.getElementById('demo');
console.log(demo.offsetWidth);
console.log(demo.style.width);
};
</script>
</html>
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
获取动态元素,需要在这个元素创建显示出来之后,再获取他的高度