文档对象用法和行为的activeElement属性?

时间:2012-04-02 20:06:48

标签: javascript

文档对象的activeElement属性设置具有键盘焦点的当前元素。

但我看到了奇怪的行为:

如果我将鼠标放在图像/锚点上,则activeElement显示

<body>

如果我右键单击锚点,则activeElement显示

<a href=....

如果我右键单击图像,则activeElement显示

<body>

有人可以冒充正确行为吗?

我正在使用Firefox。

console.log(document.activeElement);

1 个答案:

答案 0 :(得分:3)

只有“focusable”元素才能拥有焦点。与链接或te​​xtarea不同,对于图像元素,“焦点”(具有讽刺意味)很大程度上没有意义,因此规范不会将其列在必须可聚焦且大多数(所有?)浏览器都遵循的元素中。

当你[右 - ]点击一个元素时,它会“模糊”以前关注的元素(如果有的话),而“没有明确地关注其他元素,用户代理应该同步运行聚焦body元素的步骤,如果有一个“ - 其他的话,由于图像不可聚焦,它会聚焦身体元素。

如果您需要对图像或其他不可聚焦元素进行焦点行为,最佳解决方案通常是将其包装在链接中。