Angular Material对话框和禁用可聚焦元素的自动聚焦

5

文档中写道:

一旦对话框打开,对话框将自动聚焦第一个可制表元素。

您可以使用tabindex属性控制哪些元素是制表停止点。

我没有在文档或配置选项中看到任何允许您完全禁用此功能而不必在每个可制表元素上使用附加标记的内容。这似乎有点不必要和混乱。

例如:<p>通过<a href="mailto:email@email.com" tabindex="-1">电子邮件联系我们</a></p>

是否有我遗漏的配置选项?如果没有,我愿意接受任何关于如何最好处理此问题的指导。

2个回答

10

只是为了明确起见,这是一个例子。

let dialogRef = this.dialog.open(DialogOverviewExampleDialog, {
    autoFocus: false,
    width: '800px',
    disableClose: true,
    data: { 'data': data}
});

第二行(autoFocus: false)将禁用对话框的自动对焦。

您可以从此处了解更多信息。


6

在您的配置中,有一个 autoFocus 属性,您可以将其设置为 false,以防止此情况发生。您可以在 dialog-config source 中找到它。


1
我本来会感到惊讶,开发人员没有考虑到这一点。将来我也会查看源代码。谢谢! - bmd
你能帮我解决这个问题吗?https://dev59.com/ilQK5IYBdhLWcg3wQt1t @zmanc - Zhu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接