jquery - 检查是否有任何输入元素处于焦点

标签 jquery input focus

我有一个 jquery 脚本,当按下键盘上的任意键时,它会显示一个 div。我想向脚本添加一个条件,仅当页面上没有其他输入区域(文本区域或文本字段)处于焦点时才运行脚本。这样您就可以在页面的其余部分实际键入内容,而无需显示 div。

$(document).on('keydown', function (e) {
    if (!$('#test').is(':visible')) {
        //######## IF (every input is not active....) {
        if (65 <= e.keyCode && e.keyCode <= 90) {
            $(elem).fadeIn();
            $('#textarea').val('');
            $('#textarea').focus();
            $('#textarea').val(temp);
        }
    }
});

谢谢。如果有必要,我可以为页面上的每个其他文本区域提供相同的 ID。

最佳答案

使用 jQuery 的 focus伪选择器

if ( $('input:focus').length > 0 ) {  return; }

或者您的代码示例

if ( $('input:focus').length == 0) { ... }

关于jquery - 检查是否有任何输入元素处于焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14431762/

相关文章:

jquery - 当我将 URL 添加到列表,然后使用 ajax 时,我尝试在某些 iframe 中显示列表的内容,页面会自行重新加载

javascript - 无法从 Canvas 获取图像数据,因为 Canvas 已被跨源数据污染

html - 在 bootstrap 上输入带有 btn-outline 的文件

CSS: click-to-mutate div,里面有可点击的按钮。 :focus 与 tabindex,可能吗?

Winapi:使用 EnableWindow() 函数时窗口为 "sent to back"

javascript - 使用.htaccess重写后Jquery不工作

javascript - 当用户单击某个单选按钮时,如何使用 jQuery 将一个类分配给一组单选按钮?

java - CharAt 函数

javascript - getElementById() 和输入表单

css - 仅针对特定输入元素禁用 Wordpress 自动 <p> 标签