我对NgbTooltip有要求
下面是我的方法,并且无法按预期工作。
<a [ngbTooltip]="hintTooltip" tabindex="0" triggers="click:blur">hint</a>
<ng-template #hintTooltip>
Sample hint description
<a href="www.abc.com" target="_blank">Learn more</a>
</ng-template>
上面的代码通过显示超链接来打开工具提示。但是当我单击超链接时,它没有显示新窗口,而是隐藏了工具提示。
stackblitz:https://stackblitz.com/edit/angular-viipeo-dqjmfh?file=app/tooltip-triggers.html
感谢任何人都可以提供帮助
答案 0 :(得分:1)
固定的,如果有人感兴趣,下面是解决方法
.html
<a [ngbTooltip]="hintTooltip" tabindex="0" triggers="click:blur">hint</a>
<ng-template #hintTooltip>
Sample hint description
<a href="www.abc.com" target="_blank" (click)="nToolTip(t1, 'http://www.google.com');">Learn more</a>
</ng-template>
.ts
_toolTipCollection = [];
nToolTip(tooltip, _url?: string): void {
if (tooltip.isOpen()) {
if (_url) {
window.open(_url, '_blank');
}
}
for (const tooltip of this._toolTipCollection) {
tooltip.close();
}
this._toolTipCollection = [];
tooltip.toggle();
this._toolTipCollection.push(tooltip);
}
答案 1 :(得分:0)
使用ViewChild获取对Element的引用,然后使用工具提示方法关闭
@ViewChild('ref') ref;
@HostListener('mouseleave',['$event']) onHoverOutside(){
this.ref.close();
}