防止元素失去焦点

我们在文档中有很多input
我们想要打开一个生成文本的对话框,并将其放入当前关注的输入中。

问题是,当我单击一个按钮或其他任何东西打开输入失去焦点的对话框时。 我无法确定哪个输入必须获取生成的文本。

 $("#button").click(function(){ // something should goes here to prevent stealing inputs focus }); 

是否有任何解决方案可以防止通过该特殊按钮窃取焦点?

您无法使用表单button ,只需使用使其行为像按钮一样?

更新:

你可以用类似的东西

 $('span').hover(function(){ focused_element = $("*:focus").get(0); }); $('span').click(function(){ focused_element.focus(); }); 

看看我的小提琴

您的字段是否具有唯一ID? 如果是,则在单击对话框的保存/关闭按钮时使用该ID将焦点设置回字段。

一旦完成,不要担心重点被盗。

我的解决方案是处理每个焦点并将其保存在focusEle

 $(function () { var focusEle; $('*').focus(function () { focusEle = this; }); $('button').click(function (e) { console.log(focusEle); var c = confirm('Love the cat :3?'); $(focusEle).focus(); }); }); 

使用HTML作为:

   

示例正在运行: http : //jsfiddle.net/76uv7/

取决于@ggzone的想法