我现在正在使用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>';
所以,我已经尝试了我能找到的关于这个主题的一切。如果有人可以帮我解决这个问题,我真的很感激!感谢。
答案 0 :(得分:0)
找到答案! div在iScroll包装器内部,我没有意识到甚至有一个选项可以刷新它。我刚刚添加了一行来进入......
var newheight=entlist.length*200;
newheight+=200;
document.getElementById('container').style.height=newheight+'px';
myScroll.refresh();
......它就像一个魅力。 :)