假设我将一个blur
函数附加到HTML输入框,如下所示:
<input id="myInput" onblur="function() { ... }"></input>
Run Code Online (Sandbox Code Playgroud)
有没有办法blur
在函数内部获取导致事件触发的元素的ID (被点击的元素)?怎么样?
例如,假设我有这样的跨度:
<span id="mySpan">Hello World</span>
Run Code Online (Sandbox Code Playgroud)
如果我在输入元素具有焦点后立即单击跨度,则输入元素将失去焦点.该功能如何知道它mySpan
被点击了?
PS:如果跨度的onclick事件发生在输入元素的onblur事件之前,我的问题就会解决,因为我可以设置一些状态值,表明已经点击了一个特定的元素.
PPS:这个问题的背景是我想在外部触发一个AJAX自动完成控件(来自可点击元素)来显示其建议,而不会因为blur
输入元素上的事件而立即消失.所以我想检查blur
函数是否单击了一个特定元素,如果是,则忽略blur事件.