如何在 jQuery mobile (1.4 beta) 中更改页面?

Posted

技术标签:

【中文标题】如何在 jQuery mobile (1.4 beta) 中更改页面?【英文标题】:How to change page in jQuery mobile (1.4 beta)? 【发布时间】:2013-10-11 01:28:44 【问题描述】:

我正在阅读 $.mobile.changePage 已被弃用的文档。

但它并没有说支持什么,或者我可以使用什么。

有新的 API 文档页面吗?

我曾经使用$.mobile.changePage("index.html", reloadPage:true);,但似乎添加reloadPage:true 分页符

【问题讨论】:

我一直在寻找 .changePage 的替代品,但找不到。我假设(不确定,但是在 1.4 beta 1 上测试过)$.mobile.navigate() 将取代它。它接受与.changePage 相同的参数。 以上说法正确,请翻阅此文档view.jquerymobile.com/1.4.0-beta.1/dist/demos/navigation 啊哈,有人可以将此作为答案发布,以便我检查它是否正确? 【参考方案1】:

jQuery Mobile 1.4 开始,$.mobile.changePage() 已弃用并替换为:

$(":mobile-pagecontainer").pagecontainer("change", "target",  options );

缩短...

$.mobile.pageContainer.pagecontainer("change", "target",  options );

更短...(1)

$("body").pagecontainer("change", "target",  options );

注意: target 是#page_id 或 URL。

Demo


(1)<body> 默认为 pageContainer,除非在 mobileinit 上修改了 $.mobile.pageContainer

【讨论】:

我在此找到的更多信息:$.mobile.pageContainer.pagecontainer ("change", "index.html", reloadPage: true); 谢谢 - 是的,这是文件中一个巨大的明显遗漏。 @Omar 如何使用 pageContainer 更改外部页面...这可能..? @Koushik window.location.href = "url"; 应该可以在您尝试从禁用“访问来源”的其他域加载外部页面的情况下工作。 感谢您的扩展 - 这在他们的网站上记录得非常糟糕。【参考方案2】:

这对我有用:

$.mobile.pageContainer.pagecontainer('change', nextPage, 
  transition: 'flow',
  reload    : true
);

nextpage: 是下一个示例的 URL (var nextPage = 'nextPage.html')

【讨论】:

我知道,但它不能 100% 工作,大约 60% 会产生页面容器未初始化的故障。

以上是关于如何在 jQuery mobile (1.4 beta) 中更改页面?的主要内容,如果未能解决你的问题,请参考以下文章

将值(设置)从 jQuery Mobile 1.4 表单中取出并返回到 jQuery Mobile 1.4 表单中。怎么做?

如何以百分比设置 jQuery Mobile 1.4 响应式面板的宽度?

如何修复 jQuery mobile 子菜单中的标题

如何使用 Backbone.js 在 changePage 后显示 JQuery Mobile 主页面

JQuery Mobile 1.4.0 - 托管文件... CSS 不工作

为什么jQuery禁用元素在jQuery mobile中看起来可触摸?