jQuery移动页面加载问题

时间:2012-04-30 19:54:49

标签: jquery

我正在使用jQuery Mobile构建移动网络应用程序。我面临一些非常奇怪的问题。

页面与标准标签连接。每当我点击链接时,地址栏中的位置都会发生变化,我会被重定向到新页面,但为了让页面呈现我需要使用Cntrl + F5显式刷新它或点击刷新浏览器按钮。我尝试过使用FF11和Chrome。这是一个已知的问题吗?

由于

1 个答案:

答案 0 :(得分:0)

我相信我确切地知道您正在经历的事情,因为我的期望是页面就绪/加载事件会触发。有很多方法可以解决这个问题,例如:

首先,您只需在源页面中添加以下子句,即可获得指向目标页面的链接:

rel = "external"

这将导致目标页面刷新并触发那些我认为有你想要执行的javascript代码的页面加载事件。但是,您可能不希望页面出现此行为,因此......

另一个选择是在源页面添加一些脚本,当目标页面变为活动状态(或“实时”)时将触发该脚本:

$( '#YourTargetPageName' ).live( 'pageinit', function(event){
  alert( 'Hello from the TargetPage' );
  $('#SomeInputField').val('Changed text in the target page');
});

在上面的示例代码中,当您链接到目标页面时,它将显示弹出警报并更改所选输入字段的文本。

最后,如果您希望在任何页面的开头执行相同的代码,那么您将添加以下脚本:

 $(document).delegate('.ui-page', 'pageshow', function () {
   alert( 'Hello from the beginning of every page' );
 });

你可以在JQM文档中探索很多其他选项(公平地说,我只是在表面上看,所以有些选项可能更适合你的目的):

http://jquerymobile.com/test/docs/api/events.html