如何在“聚焦”事件中排除特定的div

时间:2018-10-30 11:09:06

标签: javascript ember.js javascript-events handlebars.js

我在Ember应用程序上工作,其中有:
1. {{input type="text" focus-out="inputFocusOut"}}
2. <div class="mylist"><u><li action {{action "selectItem" item}}>item</li></ul></div>

我的问题是,当我单击<li>项目时,会执行inputFocusOut函数。

目前,我在setTimeout内有inputFocusOut,以使其正常工作。

但是有没有办法在触发<div class="mylist">事件时排除focus-out? 所以当我点击<li>时不要执行吗?

1 个答案:

答案 0 :(得分:1)

您可以通过将mouseDown事件之外的click事件添加到li中来绕过focusOut事件,如下所示:

{{input type="text" focus-out=(action "inputFocusOut") }}
<ul><li {{action "selectItem" item on="click" }} {{action "myMouseDownEvent" item on='mouseDown'}}>{{item}}</li></ul>

为此用途结帐this twiddle