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();
});