在IE11中 span 元素处于焦点状态(document.activeElement
返回 span ),但它的元素没有tabindex属性,不应该在对焦。
在Chrome和Firefox中正常工作(使用tabindex属性点击焦点div元素后)。这个问题只在IE11中出现。顺便说一句,无法在jsbin上重现这个问题。
http://i.stack.imgur.com/2qdmJ.png
我也没有在可以获得焦点的元素列表中看到跨度。
这是一个已知问题吗?单击span后,如何使用tabindex作为activeElement div
?
答案 0 :(得分:3)
最后我发现它是IE11中的意外行为,如果span有display: flex
则可能出错。
点击span
后,Chrome和Firefox返回div
,IE返回span
。
检查代码段以获取详细信息。报告caniuse可能应该添加到IE跟踪器。
document.getElementById('d').addEventListener('click', function() {
alert('active element is ' + document.activeElement);
});
#d {
display: flex;
}
span {
display: -ms-flex;
display: flex;
}
<div id='d' tabindex="1">
<div>
<span>span</span>
</div>
</div>