原生JavaScript检测元素是否获得焦点

要检测元素是否在 JavaScript 中有焦点,可以使用document对象的只读属性 activeElement

const elem = document.activeElement;

activeElement 返回document当前获得焦点的元素。

示例:使用 activeElement 属性检查class为.user<input> 元素是否有焦点:

const elem = document.querySelector('.user');

if (elem === document.activeElement) {
    console.log('元素获得焦点');
} else {
    console.log(`元素没有获得焦点`);
}

 

 

 

版权声明:著作权归作者所有。

相关推荐

JavaScript检测Chrome浏览器是否在隐身窗口

浏览器在隐身模式下,它的FileSystem API是禁用的,可以通过检测FileSystem API来判断浏览器是否在隐身窗口。function isIncognito() {  var fs = window.RequestFileSystem || window.webkitRequestFileSystem;

Ubuntu检测包是否已经安装

在Ubuntu可以使用dpkg或者dpkg-query来检测软件包是否已经安装了。dpkg:dpkg -s <packagename> dpkg-query:dpkg-query -l <packagename> 如果要检测命令是属于哪个包,可以:dpkg -S `which <command>

Linux检测命令是否存在

兼容POSIX的command如果要兼容POSIX的话可以使用command:command -v <the_command>使用示例:if ! [ -x "$(command -v git)" ]; then   echo 'Error: git

Javascript检测开发者工具Devtools是否打开(Chrome/Firefox/IE)

首先要确定一点:是没有统一标准的方法来检测各个浏览器的devtools是否打开。所以只能针对不同的浏览器使用不同的方案,当然随着浏览器能的升级,有可能目前的方案也是会不适用的。这里列出目前各个浏览器可用的方案。方案一console.log隐式调用元素的idfunction isDevToolsOpened() {  var opened = fal

jquery检查元素是否可见

在jquery里,隐藏或显示元素可以分别使用.hide()和.show()。$("#myid").show(); $("#myid").hide(); 有时我们需要检查元素是否可见,从而根据元素的可见性做出处理。jquery里可以使用is(":visible")可见:$(element).is(":visible");

JavaScript监控元素外的点击事件隐藏元素

监控document的点击事件,使用jquery的closet排除指定元素以及其子元素的点击事件。function hideOnClickOutside(selector) {   $(document).on('click',function(event){     if (!$(event.target)