带有phonegap的后退按钮(并查询手机?)
Back button with phonegap (and query mobile?)
我在jquery mobile和phonegap中编写的应用程序出现问题。在浏览器中测试时,我使用后退按钮没有问题(没有涉及phonegap js(。然而,一旦我尝试使用phonegap js的设备,它就会崩溃。
复制步骤:
- 加载应用程序
- 访问多个页面(使用#内部链接(
- 单击后退按钮或从任何位置调用history.back(((使用js控制台,或通过触发调用它的东西(
在浏览器(chromium、firefox等(上,它会返回一个"页面"(到上一个#链接,不管它是什么(。这是首选行为。
在设备上(iPhone 4、iPhone模拟器、Android 2.2(设备(、Android 3.2(设备((,它会转到第一个/登录页(index.html文件中的第一个"页面"(。
我怀疑问题出在电话间隙上。有没有办法恢复到首选行为或浏览器?
您使用jQuery Mobile的"返回"按钮链接属性吗?我用得很轻,它很有效(到目前为止只在Android上使用(。您是否试图覆盖(仅限Android(后退按钮事件?不推荐,因为你想要什么,无论如何在iPhone等上都不可能。
问题是由我使用的数据url中的空格引起的。桌面浏览器似乎可以正确处理空间,但移动浏览器将空间转换为%20%
字符。jQuery mobile试图使用空格,但浏览器只记住更改后的字符。
编辑:jqm页面有一个数据url属性,允许您在一个html文档中存储多个页面。
<html>
<head> ... </head>
<body>
<div data-role="page" data-url="page-one"> ... </div>
<div data-role="page" data-url="page two"> ... </div>
</body>
</html>
第一页可以通过几种方式加载。。。
在文档中
<a href="#page-one">
或通过javascript
$.mobile.changePage("#page-one");
我遇到的问题是数据url为page two
的页面。在桌面浏览器上,空间得到了维护,jqm中内置的自定义历史控件继续按预期运行。但在移动浏览器上,该空间变成了一个逃逸空间,jqm历史控件无法识别或跟踪该空间。
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
// Call onDeviceReady when Cordova is loaded.
//
// At this point, the document has loaded but cordova-2.0.0.js has not.
// When Cordova is loaded and talking with the native device,
// it will call the event `deviceready`.
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
// Cordova is loaded and it is now safe to call Cordova methods
//
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
//
function onBackKeyDown() {
}
确保androidmenifest.xml文件中必须包含大于android:minSdkVersion的android:targetSdkVersion
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- j查询utc offSets的时差
- 如何有效地将游戏数据存储在URL查询字符串中
- 如何处理node.js节点mongodb中的连接和查询队列
- 如何从 HTML 查询中删除项目
- 从查询字符串参数推断出正确的数据类型
- 从手机中选择多个图像'使用phonegap的多媒体资料
- 将curl查询转换为jQuery.ajax()
- 触发媒体查询断点时刷新页面
- 使用DynamoDB查询返回
- 当查询不在displayField中时,引导Ajax Typeahead不显示结果
- 如何将PHP get查询转换为Meteor's HTTP.get()
- AngularJS:获取链接中没有哈希的查询字符串值
- 捕获初始RedQueryBuilder查询中的SQL问题
- AngularJS,如何更改查询字符串
- 具有大型几何图形的基于沙发的空间查询
- 在php中提交数据时,如果某些值为null,而某些值为非null,如何进行查询
- o数据扩展查询在SystemUserRolesSet上不起作用
- 带有phonegap的后退按钮(并查询手机?)
- 问题与选择查询在sqlite ios手机差距