Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使focusout事件忽略某些元素_Javascript_Jquery_Jquery Focusout - Fatal编程技术网

Javascript 使focusout事件忽略某些元素

Javascript 使focusout事件忽略某些元素,javascript,jquery,jquery-focusout,Javascript,Jquery,Jquery Focusout,在下面的代码中,如果单击,会出现一个“红色方框”。如果你把焦点放在外面,“红块”就会消失 如果“红方块”或是下一个聚焦元素,我如何使聚焦输出不会触发 JavaScript $('#one').focus(function () { $('#divRemove').show(); }); $('#one').focusout(function () { $('#divRemove').hide(); }); $('#divRemove').click(function(){

在下面的代码中,如果单击
,会出现一个“红色方框”。如果你把焦点放在外面,“红块”就会消失

如果“红方块”或
是下一个聚焦元素,我如何使
聚焦输出
不会触发

JavaScript

$('#one').focus(function () {
    $('#divRemove').show();
});

$('#one').focusout(function () {
    $('#divRemove').hide();
});

$('#divRemove').click(function(){
    alert($(this).text());    
});
HTML

<input type="text" id="one" />_______
<input type="text" id="two" />
<br/>
<br/>
<div id="divRemove" style="width:100px;height:100px;background:red; display:none;">remove on focus out</div>
_______


将焦点移出
您可以将焦点同时放在“一”和“二”上

更新

除非使用
tabindex=“0”


非常感谢-还有一件事,如果红色div还有其他元素呢。这是否适用于它的所有子项,以禁止关闭?
+1
,尽管您可以链接事件处理程序以避免重复该操作selector@Hello-我想是的,这应该不是问题Hi-你能帮我吗-如果我把元素放在div中,然后它会关闭焦点中的第二个元素-谢谢@Hello World Take-away-focusout的
oneA,oneB,oneC
$('#one,#two').focus(function () {
    $('#divRemove').show();
}).focusout(function () {
    $('#divRemove').hide();
});
<div id="divRemove" tabindex="0"
$('#one,#two,#divRemove').focus(function () {
    $('#divRemove').show();
}).focusout(function () {
    $('#divRemove').hide();
});