【问题标题】:Ionic: scrolling up stops when using scrollIntoView离子:使用 scrollIntoView 时向上滚动停止
【发布时间】:2015-01-26 17:48:46
【问题描述】:

我正在使用一个 Ionic 应用程序,它有一个侧面菜单,我在其中放置了一些按钮作为大型 html 内容的索引。当我单击侧面菜单按钮 element.scrollIntoView(false) 时,将 ion-scroll 容器滚动到元素。
我发现的问题是我可以向下滚动并继续阅读 html,但我无法向上滚动。
离子滚动定义:

<ion-scroll delegate-handle="contentScroll" zooming="true" min-zoom="1.0" height="100%" style="height:100%" direction="['x','y']">
    <div id="page-container" style="padding: 45px 5px 5px 5px;text-align: justify;">                                            
     </div>
</ion-scroll>

一个按钮定义:

<ion-content ng-controller="ScrollCtrl as scroll"> 
       <button class="button" ng-click="scroll.to('markElementN')" menu-close style="width:100%">ElementN</button>
</ion-content>

scroll.to 函数是:

function(mark) {
  if (mark == undefined || typeof mark != 'string' || mark.length < 1) {
    return;
  }
  var ob = document.getElementById(mark);
  if (ob) {
    ob.scrollIntoView(false);
  }
}

¿有同样问题的人吗?
我应该补充一点,我可以再次向下和向上滚动,但不能高于我滚动到视图中的元素

【问题讨论】:

    标签: ionic


    【解决方案1】:

    回答自己……太伤心了……我想。
    好的,在google了很多页面之后,我终于发现问题是从scrollIntoView本身开始的,所以我不得不通过scrollBy函数来改变它。
    运气不好,下次遇到同样问题的时候更好

    【讨论】:

      【解决方案2】:

      经过几天的尝试寻找答案后,我找到了这篇文章。 OP的回答没有解决我的问题。但希望这可以节省一些时间。

      我们的问题来自于混合 element.scrollIntoView() 和 ionic 的 scrollDelegate。当一个字段包含无效数据但没有 Ids(锚滚动需要工作)时,我们需要滚动到该字段。我最终通过名称获取元素,设置 id 并将其传递给滚动委托上的 anchorScroll()。

      【讨论】:

        猜你喜欢
        • 2022-01-05
        • 1970-01-01
        • 1970-01-01
        • 2014-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多