KA冉KA 2022-07-01 18:16 采纳率: 34.4%
浏览 16
已结题

angular中隐藏内容

angular中点击其他地方或空白地方的时候,如何把某块显示的内容隐藏掉

img

  • 写回答

1条回答 默认 最新

  • KA冉KA 2022-07-08 13:56
    关注
    
    import {..., Renderer2} from '@angular/core';
    declare let $: any;
    
    <div *ngIf="toolVerShow" class="planner-box">
      点击空白处隐藏
    </div>
    <button (click)="btnShow()">显示内容</button>
    
    toolVerShow = false;
    constructor(protected service: CollectViewService,
                    protected store$: Store<AppState>,
                    protected router?: Router,
                    protected activatedRoute?: ActivatedRoute,
                    protected renderer?: Renderer2) {
            super(store$);
            this.module = this.service.getModule();
            this.renderer && this.renderer.listen('window', 'click',(e: Event) => {
                let divTop = $('.planner-box'); // 要隐藏的父标签
                if (!divTop.is(e.target) && divTop.has(e.target).length === 0) {
                    this.toolVerShow = false;
                }
            });
        }
    
    btnShow(){
      this.toolVerShow = true;
      window.event.stopPropagation(); //阻止冒泡
    }
    
    评论

报告相同问题?

问题事件

  • 系统已结题 7月9日
  • 创建了问题 7月1日