首页 文章

Angular JS 4净度角ScrollTop隐藏 Headers

提问于
浏览
0

在Angular 4中,当路由器更改时,页面不会滚动顶部 .

我的解决方案是使用#top放入div,在打字稿中我使用ViewChild来滚动像

<div #top></div>

import { ViewChild, ElementRef } from '@angular/core';

@ViewChild('top') top: ElementRef;

当我启动并加载所有我需要的时候,我打电话

this.top.nativeElement.scrollIntoView();

这适用于PC,但在移动设备中,清晰度 Headers 隐藏( <clr-header> ),当我用移动设备滚动顶部时,滚动 Headers 再次显示,但是给用户带来了糟糕的体验,我希望每次都能显示 Headers .

记住, Headers 是在root上,所有嵌套路由都在“router-outlet”中,所以我在嵌套路由中的Scroll Top解决方案对root不起作用 .

我尝试在root中使用此命令,但不起作用,“滚动顶部”只适用于嵌套路由 .

我已经尝试过以下命令:

window.scrollTo(0, 0) 不行

document.body.scrollTop = 0 不行

this.document.body.scrollTop = 0 (使用Angular DOCUMENT模块)不起作用

还有很多人......有人可以帮忙吗?

1 回答

  • 0

    尝试

    window.pageYOffset || document.documentElement.scrollTop ||document.body.scrollTop || 0
    

    这将涵盖所有浏览器,应该可以工作 .

相关问题