焦点事件不会在输入字段上触发(没有jQuery)

时间:2016-11-01 01:30:53

标签: javascript javascript-events focus

由于某种原因,以下代码仅在窗口获得焦点时触发,但不在输入字段获得焦点时触发,或者在任何其他元素(无论它们是否具有tabindex)时触发。

我不想使用someElement.addEventListener方法,因为在添加事件侦听器时该元素未附加到视图。

var handleFocus = function(event) {
   var el = event.target;
   console.log(el);
}

addEventListener('focus', handleFocus, false);

我基本上需要监听何时关注任何输入字段。我想将它应用于父窗口的原因是在不同的时间(Aurelia)添加和删除了表单字段。

当事件触发时,我希望能够读取目标的属性,以查看我需要采取的操作。

对此的任何帮助都是超级......

1 个答案:

答案 0 :(得分:2)

原来你需要将'useCapture'选项设置为true。如果您想了解有关'useCapture'选项的更多信息,this StackOverflow question比MDN做得更好。

只是意味着我必须改变这一点:

addEventListener('focus', handleFocus, false);

......对此:

addEventListener('focus', handleFocus, true);