如何在IE中使用relatedTarget(或等效)?

Dan*_*iel 6 javascript events internet-explorer onblur

显然IE(11)存在问题relatedTarget,例如关于blur事件.IE有替代方案relatedTarget吗?

这是一个在IE中产生错误的示例:https: //jsfiddle.net/rnyqy78m/

小智 16

看起来IE11在调用blur事件之前将document.activeElement设置为下一个focus元素.因此,要在IE11等所有浏览器中正确处理模糊,您可以使用类似的东西

var target = evt.relatedTarget;
if (target === null) { target = document.activeElement; }
Run Code Online (Sandbox Code Playgroud)

我改编你的小提琴使用它:https://jsfiddle.net/hukt0rhj/


Shi*_*lly 12

如果我查看此列表:https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/relatedTarget blur不包含为具有标准辅助目标.所以我认为chrome中模糊的次要目标是非标准的.

如果你通过focusin或focusout替换模糊,它对我来说也适用于IE11.