【问题标题】:How to open a child div on hover parent?如何在悬停父级上打开子级 div?
【发布时间】:2018-10-07 12:31:11
【问题描述】:

我正在使用 angular 6 和 typescript 来制作应用程序,我需要在单击时打开子 div 并在悬停父级时打开。

现在点击事件,一切正常,但无法在 onmouseover 事件上执行。

HTML

<ul class="list-unstyled">
    <li *ngFor="let item of items">
        {{item.order}}
        <button (onmouseover)="openCurrentOrder(item)" (click)="openCurrentOrder(item)"> Click/Hover here to open order {{item.id}} </button> <br>
        <div class="list-items inner-list-items" *ngIf="item.isActive">
            opened order {{item.id}}
        </div>
    <br><br><br>
    </li>
</ul>

Ts

  items: any = [
    {id: "1",order: "one", isActive: false},
    {id: "2",order: "two", isActive: false},
    {id: "3",order: "three", isActive: false},
    {id: "4",order: "four", isActive: false},
    {id: "5",order: "five", isActive: false},
  ]

  isActive: boolean = false;

  openCurrentOrder(item) {
    item.isActive = !item.isActive;
    console.log("opened");
  }

请帮助我在将鼠标悬停在按钮上时打开子 div,就像在单击时一样。

解决方案需要是纯Javascript/Typescript,没有jquery。

工作堆栈闪电战 https://stackblitz.com/edit/angular-t5ahud

【问题讨论】:

  • 您可能正在寻找(mouseenter)(mouseleave) 事件
  • @Ploppy,你是说mouseenter="openCurrentOrder(item)" 吗??

标签: javascript html angular typescript mouseover


【解决方案1】:

Angular 中没有onmouseover 事件,您可以使用内置的mouseentermouseleave Angular 事件来代替:

<button
  (mouseenter)="openCurrentOrder(item)"
  (mouseleave)="closeCurrentOrder(item)"
  (click)="toggleCurrentOrder(item)">
  Click/Hover here to open order {{item.id}}
</button>

STACKBLITZ

【讨论】:

    【解决方案2】:

    请像下面这样更改代码。

    (mouseover)="openCurrentOrder(item)"
    

    工作副本已在以下链接中更新。

    工作堆栈闪电战https://stackblitz.com/edit/angular-t5ahud

    【讨论】:

    • Prem,请不要在我提供的同一链接上进行编辑,因为其他观众无法看到我在 stackblitz 中所做的工作,就像我的问题中提到的那样。创建一个新的并在其中反映您的更改。
    • 嗨玛尼。很抱歉编辑您的链接。创建了一个新链接,并在新链接中为您的解决方案提供了解决方法。 stackblitz.com/edit/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-28
    • 2012-10-07
    • 2022-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-20
    相关资源
    最近更新 更多