Javascript 如何在单击div时保持输入文本的焦点不变?

Javascript 如何在单击div时保持输入文本的焦点不变?,javascript,text,input,focus,Javascript,Text,Input,Focus,正如title所说,我试图在单击一个div时保持输入文本的焦点不变 具体地说,我正在尝试类似于Google Livesearch(不是即时搜索)中发生的事情(当你在那里键入时,会显示一个十项列表)(我无法放置图像) 当你点击“谷歌搜索”时,仍然保持输入文本的焦点 我正在尝试,但总是失去输入文本的焦点 有人知道如何做到这一点 附言:我指的是鼠标下移事件 提前感谢。当您的部门捕捉到鼠标下降事件时,您可以尝试重新关注文本输入 下面是一个使用jQuery的快速示例: $("#my-division").

正如title所说,我试图在单击一个div时保持输入文本的焦点不变

具体地说,我正在尝试类似于Google Livesearch(不是即时搜索)中发生的事情(当你在那里键入时,会显示一个十项列表)(我无法放置图像)

当你点击“谷歌搜索”时,仍然保持输入文本的焦点

我正在尝试,但总是失去输入文本的焦点

有人知道如何做到这一点

附言:我指的是鼠标下移事件


提前感谢。

当您的部门捕捉到鼠标下降事件时,您可以尝试重新关注文本输入

下面是一个使用jQuery的快速示例:

$("#my-division").on("mousedown", function (evt) {
    $("#my-input").focus();
});
检查此解决方案:

首先,存储最后一个焦点元素:

var lastFormElementFocused = 'my-first-element-id';
$(document).on('focus', '.your-class', function() {
        lastFormElementFocused = $(this).attr('id');
        console.log(lastFormElementFocused);
    });
之后,在onClick事件中:

$(document).on('click', "div.your-class", function() {
        $("#" + lastFormElementFocused).focus();
        var element = $(document.activeElement);
        // Do with 'element' what you want
    });
请注意,您需要在关注的每个元素中指定一个id