如何使用JavaScript方法hasFocus()不是对整个文档而是对文档中的元素?
上的定义说它是可以做到的,但没有说明它是如何做到的。 片段:如何使用JavaScript方法hasFocus()不是对整个文档而是对文档中的元素?,javascript,focus,onfocus,Javascript,Focus,Onfocus,上的定义说它是可以做到的,但没有说明它是如何做到的。 片段: 我觉得这是对文件的误读。医生说: hasFocus()方法返回一个布尔值,指示文档(或文档中的任何元素)是否具有焦点 它并不是说您可以检查文档或您想要的任何元素,而是说它将检查文档或文档中的任何元素是否具有焦点 要提出具有类似功能的方法,只需将document.activeElement与所选元素进行比较即可 //获取元素 让testElement=document.getElementById('container'); //对照
我觉得这是对文件的误读。医生说: hasFocus()方法返回一个布尔值,指示文档(或文档中的任何元素)是否具有焦点 它并不是说您可以检查文档或您想要的任何元素,而是说它将检查文档或文档中的任何元素是否具有焦点
要提出具有类似功能的方法,只需将
document.activeElement
与所选元素进行比较即可
//获取元素
让testElement=document.getElementById('container');
//对照.activeElement进行检查
让isFocused=(document.activeElement==dummeyel);
要对一个元素执行hasFocus方法,首先需要像选择document.getElementById(elementId)那样选择它,然后将其放入一个变量中,使其变得更容易,例如让testElement=document.getElementById(elementId)
,然后用hasFocus方法测试这个元素,如下图所示
if(document.activeElement==testElement){
//做点什么。。。
}
w3文档说,如果页面上的任何元素被聚焦,则document.hasFocus()
返回true,而不是说您可以对任何元素调用hasFocus
。有些答案有一种方法你可以检查它。是的。。。ofc,但我有一条错误消息:TypeError:“document.getElementById(…).hasFocus不是函数”
if (document.getElementById(atr).hasFocus())
{
console.log("focused");
}
else
{
console.log("not focused");
}