css - apple-mobile-web-app-capable angular-ui-bootstrap 模态滚动问题

标签 css angularjs twitter-bootstrap-3 angular-ui-bootstrap iphone-standalone-web-app

我发现我正在开发的一个简单的待办事项列表网络应用程序存在问题。我正在使用

<meta name="apple-mobile-web-app-capable" content="yes">

所以它可以独立启动 iPhone。

我看到的问题是当应用程序从主屏幕启动时,我滚动到超出屏幕底部的列表底部并尝试添加元素,模态困惑,如下所示:

apple web app modal issue

它在固定标题 div 和模态本身的顶部显示列表顶部的元素。

index.html 看起来像这样:

<!DOCTYPE html>
<html ng-app="app" manifest="app.appcache">
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0" />
    <meta name="apple-mobile-web-app-capable" content="yes">

    <script src="js/vendor.js"></script>
    <script src="js/app.js"></script>

    <link rel="stylesheet" href="css/bootstrap.min.css">
    <link rel="stylesheet" href="css/app.css">
    <link rel="stylesheet" href="css/undo.css">

    <link rel="apple-touch-icon" sizes="76x76" href="apple-touch-icon-76x76.png">
    <link rel="apple-touch-icon" sizes="120x120" href="apple-touch-icon-120x120.png">
    <link rel="apple-touch-icon" sizes="152x152" href="apple-touch-icon-152x152.png">

    <title>All your lists</title>
</head>
<body>
    <div class="container" ng-view></div>
</body>
</html>

View 看起来像这样:

<div class="header">
    <div class="row">
        <div class="col-xs-3" style="text-align: left;">
            <button type="button" class="btn btn-sm btn-primary btn-top" ng-click="home()">
                <span class="glyphicon glyphicon-home"></span>
            </button>
        </div>
        <div class="col-xs-6" style="text-align: center; line-height: 40px; color: #eee">
            <h4>{{list.name}}</h4>
        </div>
        <div class="col-xs-3" style="text-align: right">
            <div class="btn-group" role="group">
                <button type="button" class="btn btn-sm btn-primary btn-top" ng-click="open()">
                    <span class="glyphicon glyphicon-plus"></span>
                </button>
            </div>
        </div>
    </div>
</div>

<ul class="list-group">
    <li class="list-group-item app-item" ng-repeat="item in items | filter: { checked: 'false' }">
        <list-item item="item" toggle="toggleItemCheck" delete="deleteItem"></list-item>
    </li>
    <li class="list-group-item got-item" ng-repeat="item in items | filter: { checked: 'true' }">
        <list-item item="item" toggle="toggleItemCheck" delete="deleteItem"></list-item>
    </li>
</ul>

header div 的 css 是:

.header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    height: 40px;
    background-color: #444;
    padding-left: 5px;
    padding-right: 5px;
}

当我在桌面(移动 View )和 iPhone 上的浏览​​器中查看 Web 应用程序时,我没有看到问题 - 它似乎随着模态下降而滚动到顶部。

我在 apple-mobile-web-app-capable 模式中注意到的另一件事是,如果模态出现在列表顶部时,我可以向下滚动并查看模态淡入淡出覆盖的结束位置,暴露一些列出元素。

最佳答案

我对这个问题不太满意的解决方案是使用

$window.scrollTo(0,0);

打开模式之前

关于css - apple-mobile-web-app-capable angular-ui-bootstrap 模态滚动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39171599/

相关文章:

javascript - 如何在 Laravel 5.2 中增加语义 UI 表的计数

jQuery 从输入文本框中显示图像预览

javascript - 为什么从外部 Angular 调用的服务不是单例?

html - CSS 过渡 : Border Slides Instead of Fading

angularjs - Ui路由器状态变化: Keep Controller and Scope but Destroy DOM

javascript - angularJS 在 Firefox 中的糟糕表现

twitter-bootstrap - Bootstrap 3 中堆叠列时的垂直空间

javascript - 使用 Bootstrap 在多个 html 页面上显示导航栏

css - 更改宽度过滤器输入框 primefaces 数据表

html - css 显示表格单元格使右侧单元格向下移动