动态更新dom内容后,页面调整大小失败

时间:2011-08-20 11:12:27

标签: jquery-mobile

我正在使用jqm和phonegap开发移动应用程序。 我创建了一个多页面的html文件。在单个html文件中有两个带有'myPage1'和'myPage2'的jqm页面.'myPage1'包含一个项目列表。单击列表项我将发出ajax调用并在'myPage2'上显示响应数据。 从ajax调用得到响应后,我正在调用jqm changePage函数,如:

$ .mobile.changePage('#myPage2',{             过渡:“幻灯片”,             反转:假,             changeHash:true });

在pagecreate事件中,我在DOM中进行了一些更改,导致页面显示大小增加。一切都在PC浏览器上完美运行,但在Android上,页面大小与屏幕大小相同,即我无法向下滚动以查看整页内容。

我在更新DOM之后尝试调用$('#myPage2')。page()和$(document).resize(),但都是徒劳的。

仅在使用基于jqm ajax的页面加载更改页面时才会出现此问题。如果我创建一个单独的html文件,在其中声明'myPage2'而不是调用$ .mobile.changePage,使用rel ='external'作为'myPage1'列表项中的链接属性,问题就解决了。我甚至不必打电话给$('#myPage2')。page()。

但我想使用基于jqm Ajax的页面加载,因为我想利用jqm页面转换。

以下是我的配置详情: Jquery verison - 1.6.2 Jquery Mobile Version - 1.0 Beta 2 Android版本 - 2.2.2 Android浏览器:Mozilla / 5.0(Linux; U; Android 2.2.2; hd-us; eeepc Build / FRG83G)AppleWebKit / 533.1(KHTML,类似Gecko)版本/ 4.0 Mobile Safari / 533.1

任何指针都会非常有用,因为我的工作因此而被门控。 提前谢谢。

的Ajay

1 个答案:

答案 0 :(得分:2)

而不是.resize();.page();尝试新的触发器选项:

.trigger('create');

以下是Beta2的发行说明: