首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery / Cordova历史问题- iOS 9历史破裂?

jQuery / Cordova历史问题- iOS 9历史破裂?
EN

Stack Overflow用户
提问于 2015-09-28 09:58:23
回答 1查看 2.9K关注 0票数 2

我只是在写一份申请。上周开始工作后,我增加了几页。今天我试着实现回退按钮我失去了理智..。现在我试着让它工作了四个小时,但是我无法工作,因为iOS 9中有一些奇怪的行为。

因此,为了更好地理解,我的硬件设置:

  • Mini Yosemite 10.10.5
  • iPhone 6S - iOS 9.0.1 (13A 405)
  • iPhone 6+ - iOS 9.0β(13A4305 G)
  • iPhone 5- iOS 9.0 (13A344)
  • iPad 4- iOS 8.3 (12F69)

为了更好地理解我的应用程序设置:

  • 科多瓦5.3.3版
  • Cordova平台iOS 3.9.1版
  • jQuery at 2.1.4小型化
  • jQuery移动 1.4.5小型化

问题所在

因此,我想通过jQuery在我的应用程序中实现一个back按钮。Normaly的方法是添加一个href,其中包含data-rel="back"data-transition="reverse"等属性。所以我的代码是这样的:

index.html

代码语言:javascript
复制
<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8">
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
    <link rel="stylesheet" type="text/css" href="css/index.css">
    <link rel="stylesheet" type="text/css" href="css/jquery.mobile.structure-1.4.5.min.css">

    <script type="text/javascript" src="js/jquery-2.1.4.min.js"></script>
    <script type="text/javascript" src="js/jquery.mobile-1.4.5.min.js"></script>
    <script type="text/javascript" src="cordova.js"></script>
    <title>Hello World</title>
    </head>
    <body>
        <div data-role="page" id="page1">
          This is page 1<br />
          <br />
          <a href="#page2" data-transition="slide">
            Go to page 2
          </a>
        </div>

        <div data-role="page" id="page2">
          This is page 2<br />
          <br />
          <a href="#" data-rel="back" data-transition="reverse">
            Go back to page 1
          </a>
        </div>
    </body>
</html>

后退按钮在iOS 9和iOS 9.0.1中不工作。在iOS 8.3中,一切都很好。关于这个问题有什么了解吗?有人听说过吗?还是我完全错了,做错了什么?因为我不能在android上测试它,如果有人能这样做的话,那就太好了。

http://codepen.io/anon/pen/vNyrgB

等待你的反馈..。提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2015-10-06 17:12:39

目前有很多问题,但是如果是关于后退按钮导航和页面闪烁,那么修复方法很简单:

代码语言:javascript
复制
$.mobile.hashListeningEnabled=false;

将其放置在设备就绪事件中。

不过,考虑到这会打破Android按钮,所以您实际上应该只在应用程序也应该在Android上运行时有条件地应用这个按钮。类似于:

代码语言:javascript
复制
if ( device.platform === "iOS" ) {
  $.mobile.hashListeningEnabled=false;
}
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32820224

复制
相关文章

相似问题

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