【发布时间】:2015-08-04 21:02:20
【问题描述】:
根据设计,菜单容器 onblur 事件应在输入获得焦点时禁用,并在输入失去焦点时(即用户完成输入时)重新启用。
function pauseHiding(hiderId) {
var hider = document.getElementById(hiderId);
hider.onblur = null;
}
function resumeHiding(hiderId, timeout) {
var hider = document.getElementById(hiderId);
hider.onblur = "setTimeout(function(){hideMenu(hiderId);}, timeout);";
hider.focus();
}
实际上,input 的 onfocus 事件是正常触发的,但紧随其后的是 onblur 事件。此外,onfocus 会删除菜单容器的 onblur 事件,但 input 的 onblur 不会将其返回。 https://jsfiddle.net/2dxre6nz/4/
【问题讨论】:
标签: javascript html