首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Phonegap jqm混合本地和服务器html文件

Phonegap jqm混合本地和服务器html文件
EN

Stack Overflow用户
提问于 2014-06-04 15:22:22
回答 1查看 148关注 0票数 1

我想添加一些在线网页到一个应用程序,保持他们的最新,而不发布一个新的商店版本。为此,我教会了我可以使用jqm导航来加载外部页面。(我知道这可能不是所有平台都允许的。)

我已经确定:

代码语言:javascript
运行
复制
 $.mobile.allowCrossDomainPages = true;
 $.mobile.pushStateEnabled = false;

这似乎是可行的,但问题是,我的href和$.mobile.ChangePages必须更改为

代码语言:javascript
运行
复制
<a href='http://mydomain.com/mypage.html'>link</a> 
$.mobile.changePage('http://mydomain.com/mypage.html');

代替

代码语言:javascript
运行
复制
<a href='mypage.html'>link</a>
$.mobile.changePage('http://mydomain.com/mypage.html');

是否有更好的方法使用jqm导航在本地和在线加载html页面?

额外信息:

  • Phonegap/Cordova版本3.5.0
  • jqm 1.3.2
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-04 15:39:59

为什么不改用loadPage方法呢?它将把远程页面(使用AJAX,就像jQuery方法加载一样)加载到DOM中。然后,您可以很容易地使用changePage打开加载的页面。

它可以用于加载外部和内部内容。它不会遇到像$.ajax函数这样的跨域问题。您只需要在将内容加载到DOM中时小心,如果需要的页面很大,则需要手动将其从DOM中删除。这只是这个解决方案的缺点(如果你想的话,我会给你举一个例子)。

另外你还得明白另一件事。当使用loadPage或changePage加载外部内容时,无论是加载还是远程HTML文件,jQuery移动将只加载远程文件中的第一个 div。它会抛弃一切。包括其他页面。

如果您想加载完整的内容,那么您应该使用jQuery方法load,但是要小心只加载BODY内容,如果您将竞争HTML页面(包括HEAD)加载到现有的jQuery移动项目中,它可能会变得很混乱。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24041424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档