【问题标题】:How to hide a matTooltip after set time interval?如何在设置时间间隔后隐藏 matTooltip?
【发布时间】:2021-11-11 20:11:41
【问题描述】:

我查看了 Angular 官方材料设计工具提示页面,但是,如果用户长时间停留在对象上,似乎找不到任何地方如何在设置的时间间隔后隐藏 matTooltip?是否有单独的内置属性?或者我需要某种解决方法?

它已按照文档中的说明导入到我的 TS 文件中,并且可以正常工作,因此我不会在此处添加该部分代码。

我的 HTML 如下:

     <a matTooltip="Info about the action" matTooltipPosition="right">
       <i class="fal-settings"></i> Settings
     </a>

【问题讨论】:

标签: angular-material tooltip


【解决方案1】:

模板:

 <a #actionInfoTooltip="matTooltip" matTooltip="Info about the action" matTooltipPosition="right" (mouseenter)="hideTooltipIn(actionInfoTooltip, 3000)">
   <i class="fal-settings"></i> Settings
 </a>

组件:

import { MatTooltip } from '@angular/material';
...

hideTooltipIn(tooltip : MatTooltip, ms : number){
  setTimeout(() => tooltip.hide(), ms);
}

【讨论】:

    【解决方案2】:

    使用matTooltipHideDelay 在工具提示隐藏之前添加延迟。对于您的情况:

    <a matTooltip="Info about the action"
     matTooltipPosition="right"
     [matTooltipHideDelay]="3000">
    
       <i class="fal-settings"></i> Settings
    
    </a>
    

    这将在 3 秒后隐藏工具提示。

    【讨论】:

    • 文档对此非常清楚:“在调用 *** hide 之后隐藏工具提示 *** 之前的默认延迟毫秒”这不是 OP 要求的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 2011-11-09
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多