搜尋

首頁  >  問答  >  主體

如何在滑鼠懸停時根據組件欄位更改div背景

我有一個div,當它被懸停時,背景顏色會改變,我還需要根據元件中的一個元素選擇顏色。

<div *ngFor="let u of users;" 
  [style:hover.background-color] = "u.selected ? 'red' : 'blue' ">
</div>

P粉968008175P粉968008175442 天前562

全部回覆(1)我來回復

  • P粉520545753

    P粉5205457532023-09-13 00:19:30

    從上面的評論連結:

    "實際上這不是一個Angular問題:偽元素不是DOM樹的一部分,因此不會暴露任何可以用來與它們互動的DOM API。"

    所以你可以用CSS變數來代替:

    樣式檔:

    #
    .highlight:hover {
      background-color: var(--highlight-color);
    }

    模板:

    <div class="highlight" *ngFor="let u of users;" 
             [ngStyle] = "{'--highlight-color': u.selected ? 'red' : 'blue'} ">
          {{ u.name }}
        </div>

    回覆
    0
  • 取消回覆