【问题标题】:offset ui-router autoScroll偏移 ui-router autoScroll
【发布时间】:2016-03-23 20:00:32
【问题描述】:

当页面加载/路由更改时,我正在使用 ui-router 的 autoScroll 向下滚动到 div(ui-view)。它目前这样做。有什么办法可以抵消autoScroll?我需要在菜单可见的元素上方保留 100 像素,并且对如何完成这一点感到困惑。

app.directive('scrollTop', function($uiViewScroll) {

        var linker = function (scope, element, attr, $elm) {
            $uiViewScroll(element);
        };

        return {
            restrict: 'A',
            link: linker
        }
   });

HTML:

<ui-view [autoscroll="true"]/>

【问题讨论】:

    标签: angularjs angular-ui-router autoscroll


    【解决方案1】:

    autoscroll 指令允许您在填充视图时设置浏览器窗口的滚动行为。

    默认情况下,$anchorScroll 被 ui-router 的自定义滚动服务 $uiViewScroll 覆盖。此自定义服务让您在状态激活期间填充 ui-view 元素时将它们滚动到视图中。

    尝试装饰默认的 $uiViewScroll 服务,覆盖默认行为。

    app.config(function ($provide) {
    $provide.decorator('$uiViewScroll', function ($delegate) {
        return function (uiViewElement) {
           // var top = uiViewElement.getBoundingClientRect().top;
           // window.scrollTo(0, (top - 30));
           // Or some other custom behaviour...
        }; 
      });
    });
    

    http://corpus.hubwiz.com/2/angularjs/22290570.html

    【讨论】:

      猜你喜欢
      • 2018-07-21
      • 1970-01-01
      • 1970-01-01
      • 2017-11-13
      • 2019-05-22
      • 2021-01-12
      • 1970-01-01
      • 2015-10-01
      • 1970-01-01
      相关资源
      最近更新 更多