Phonegap& Javascript - Div的动态调整大小

时间:2013-12-18 20:12:17

标签: javascript html css cordova

我现在正在使用Phonegap / Cordova在Android上工作,无论我做什么,我都无法正确调整大小。它在我的Javascript中填充了一堆子节点,除非我将div硬编码到一些荒谬的高度,其中一些隐藏起来。奇怪的是,当我设置“alert();”时无论是在此之前还是之后...

var newheight=entlist.length*200;
newheight+=200;
document.getElementById('container').style.height=newheight+'px';

......它会正确显示。此外,“entlist”是所有条目的列表,这些条目将变为“容器”的子节点。我们的想法是让'容器'尽可能高,以适应所有这些,加上一点缓冲,以防万一,至少直到我让它工作,看看它是什么样的。

它与警报一起显示的事实使我认为div只需要重新绘制。因此,我试过......

var div=document.createElement("div");
document.getElementById('container').appendChild(div);
document.getElementById('container').removeChild(div);

...而且,每次添加一个孩子时都会增加高度...

var cH = document.getElementById("container").offsetHeight;
document.getElementById("container").style.height = (cH+150)+"px";

...将'容器的高度设置为“auto”,最后......

document.getElementById('container').innerHTML = '<p>test</p>';

所以,我已经尝试了我能找到的关于这个主题的一切。如果有人可以帮我解决这个问题,我真的很感激!感谢。

1 个答案:

答案 0 :(得分:0)

找到答案! div在iScroll包装器内部,我没有意识到甚至有一个选项可以刷新它。我刚刚添加了一行来进入......

var newheight=entlist.length*200;
newheight+=200;
document.getElementById('container').style.height=newheight+'px';
myScroll.refresh();

......它就像一个魅力。 :)