繁体   English   中英

启动时的角度材质对话框组件滚动问题

[英]Angular Material Dialog Component Scrolling Issue at Startup

我在我的应用程序中使用了 Angular Material Dialog 组件,在这个对话框中,我向用户展示了一个 HTML 数据表,它可能有一个滚动条。

我的问题是,当我单击按钮打开实际对话框时,我注意到内容立即滚动到底部,这很麻烦,因为我需要手动滚动回顶部。

我正在使用此处描述的标准设置:

https://material.angular.io/components/dialog/overview

我的对话调用如下:

myDialog(a: string, b: string) {
        let dialogRef = this.dialog.open(MyDialogComponent, {
            height: '500px',
            width: '800px',
            data: { a,b }
        });
}

我该怎么做才能避免这个滚动到底部的问题? 我尝试过一些 CSS,例如top: 0; position: fixed; top: 0; position: fixed; 但无济于事。

它发生在你身上的原因是,对话框组件自动聚焦在你的 HTML 内容中的第一个输入/按钮上。 您应该将 'autoFocus: false' 添加到 Dialog 选项以防止它。

myDialog(a: string, b: string) {
    let dialogRef = this.dialog.open(MyDialogComponent, {
        height: '500px',
        width: '800px',
        autoFocus: false,
        data: { a,b }
    });
}

通过将以下 HTML 代码移动到页面顶部解决了我的问题。

<mat-dialog-actions>
    <br>
    <button mat-raised-button type="button" mat-dialog-close (click)="closeDialog()" class="my-btn">
        Close
    </button>
</mat-dialog-actions>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM