【发布时间】:2020-01-18 03:21:33
【问题描述】:
我想在我的页面上添加一个可以滑入视图的叠加层。为此,我在覆盖打开和关闭期间设置了 div 的 style.width。问题是 div 由 *ngIf 控制,当我的 .ts 代码将 *ngIf 设置为 true 并尝试设置 div 的宽度时,该 div 未定义。
我怎样才能让它工作?
组件 HTML:
<div *ngIf="showOverlay === true">
<div id="myOverlay" class="overlay" style="margin-top: 25px;">
<a href="javascript:void(0)" class="closebtn" (click)="closeOverlay()">×</a>
<div class="overlay-content">
<a href="#">Overlay is working!</a>
</div>
</div>
</div>
<div *ngIf="showOverlay === false" id="content" style="padding: 30px;">
...
</div>
组件 TS:
public showOverlayFcn() {
this.showOverlay = true;
this.openOverlay();
}
public openOverlay() {
document.getElementById("myOverlay").style.width = "100%";
}
public closeOverlay() {
document.getElementById("myOverlay").style.width = "0%";
}
谢谢!鲍勃
【问题讨论】: