当我动态地向jQuery移动设备对话框添加内容,并且新内容超出了手机屏幕的下边缘时,我无法向下滚动对话框以查看新内容。但是,当我旋转设备以强制重绘屏幕上的任何内容时,向下滚动工作正常。
我在对话框元素上尝试了.page()和.trigger('create'),并且附加新内容的对话框中的元素不能解决问题。
如何更新对话框,以便滚动适用于已添加到其中的所有内容?
我正在使用Jquery mobile 1.2.0,Phonegap 2.2.0,Android 4.0。
感谢。
答案 0 :(得分:0)
旋转屏幕时,重绘不会使滚动开始工作。 jQuery mobile有一个窗口调整大小事件,它以像素为单位设置页面大小,这有时会导致在错误的时间更改大小。在大多数情况下,您可以使用css中的!important规则覆盖它。
如果您不想深入了解jQuery mobile内部,更简单的选择可能是在对话框中放置一个固定大小的容器并设置overflow:auto,以便对话框本身不需要滚动。 / p>
答案 1 :(得分:0)
.trigger('updatelayout')为我解决了这个问题,包括Chrome / webkit和iOS。
每次添加新内容时都会调用它,例如:
jQuery("#" + id).append(paragraph).trigger('updatelayout');