我有一個div
,我想要顯示/隱藏焦點/模糊input
。下面是我想要一個簡化版本:Angular2 roll-my-own下拉隱藏如果點擊?
<input (focus)="ShowDropDown=true;" (blur)="ShowDropDown=false;" />
<div *ngIf="ShowDropDown">
<ul>
<li (click)="...">...</li>
<li (click)="...">...</li>
<li (click)="...">...</li>
</ul>
</div>
這div
包含的元素點擊列表。我的問題是input
的模糊現象發生在li
的點擊之前。
我想保持簡單。我不想設置所有的焦點或點擊事件來設置ShowDropDown=false
,但我需要保持下拉div的交互。
我可以讓ShowDropDown
成爲一個數字,其中聚焦加1,鼠標懸停在div上增加了另一個1,模糊輸入減去1,並且將鼠標移出div減去1,但是我想可能會超出非常容易同步。
有沒有更簡單的方法來做到這一點?點擊後我可以強制模糊運行嗎?
我在li元素中的點擊事件根本沒有運行,或者我不需要工作。模糊首先發生,將ShowDropDown設置爲false,div被隱藏,點擊註冊在div後面的元素上。 –