Javascript 如何找到包含html内容的变量的高度 函数appData(arg){ var tmp='
jQuery在执行Javascript 如何找到包含html内容的变量的高度 函数appData(arg){ var tmp=',javascript,jquery,height,Javascript,Jquery,Height,jQuery在执行$(tmp)时,似乎对您选择的元素感到困惑,因此返回一个空高度 如果在初始化时将字符串明确定义为对象,则可以在将其连接到DOM后计算高度。请尝试以下操作: function appData (arg) { var tmp ='<div class="eventPopUp" z-index:6;">asdfasd <br> asdfasd <br> asdfasd <br> asdfasd<div style="cl
$(tmp)
时,似乎对您选择的元素感到困惑,因此返回一个空高度
如果在初始化时将字符串明确定义为对象,则可以在将其连接到DOM后计算高度。请尝试以下操作:
function appData (arg) {
var tmp ='<div class="eventPopUp" z-index:6;">asdfasd <br> asdfasd <br> asdfasd <br> asdfasd<div style="clear:"></div></div>'
$(arg).html(tmp);
var off= $(tmp).offset().left;
var wid = $(tmp).width();
//var hei = $(arg).children().height();
var hei = $(tmp).outerHeight();
console.log('width is ' + wid + ' height is ' + hei);
}
函数appData(arg){
var$tmp=$('asdfasd
asdfasd
asdfasd
asdfasd')
$(arg).append($tmp);
var off=$tmp.offset().left;
var wid=$tmp.width();
var hei=$tmp.outerHeight();
console.log('宽度为'+wid+'高度为'+hei));
}
得到0的原因很可能是因为在元素包含任何内容之前读取了高度。换句话说,请尝试使用 如果这不起作用,请尝试使用setTimeout
$( document ).ready(function() {
// call appData function here
});
你每隔一秒钟检查一次高度,直到高度与0不同。我不建议这样做,除非你开始在墙上留下前额标记。我不确定是否有任何方法/方法可以找到尚未创建的元素的高度/宽度。arg是什么,正在更新哪个HTML?你正在使用您的tmp作为选择器。因此jQuery正在寻找选择器
'
$( document ).ready(function() {
// call appData function here
});
x = setTimeout(function() {
// call appData or read height and if height of my selection is != 0 then
// {
// clearTimeout(x);
// myHeight = height of my selection
// call function that does something with it and send it as a param
// }
}, 1000);