我有一个li:
<li _ngcontent-c21="" class="accordion li" tabindex="0" aria-expanded="true">
我已经标记到.docent.activeElement实际上就是这个元素。然而,
document.activeElement.matches(':focus')
false
让事情变得更加棘手:
document.activeElement.focus()
undefined
document.activeElement.matches(':focus')
false
这是怎么回事?(这是铬,顺便说一句(
如果这发生在控制台中,则控制台是焦点,而不是元素或页面;因此,只要控制台处于焦点,元素就不能与:focus
匹配。这不是Element#matches()
的限制,而是:focus
工作方式的副作用——:focus
CSS样式规则的行为方式相同。
如果在控制台中设置超时并在超时到期前重新聚焦页面,或者在页面内的<script>
中调用这些函数,则document.activeElement
应与预期的:focus
匹配。