使焦点事件忽略某些元素
Make focusout event ignore some elements
在下面的代码中,如果您单击<input type="text" id="one" />
,则会出现一个"红色块"。如果你聚焦,那么"红色块">就会消失。
我如何使focusout
在"红色块"或<input type="text" id="two" />
是下一个焦点元素时不会触发?
演示
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>
您可以将重点放在 #one 和 #two 上
$('#one,#two').focus(function () {
$('#divRemove').show();
}).focusout(function () {
$('#divRemove').hide();
});
演示
更新
除非你给它一个像这样的自定义索引,否则你不能真正聚焦一个div tabindex="0"
<div id="divRemove" tabindex="0"
然后在jQuery中这样做
$('#one,#two,#divRemove').focus(function () {
$('#divRemove').show();
}).focusout(function () {
$('#divRemove').hide();
});
演示
相关文章:
- 单击时将焦点更改为元素
- 检查元素是如何获得焦点的
- 单击其他元素或鼠标向上时隐藏输入框,但保留一次焦点
- 将焦点移动到页面元素
- 如何使元素在按下按钮时不会失去焦点
- 将焦点设置为输入元素角度 js
- 遍历 DOM 以查找哪个元素具有焦点
- 如何仅在输入元素具有焦点时才启动 setInterval
- jQuery网站的键盘快捷键,焦点使用左键和右键转到上一个或下一个元素
- 如何检查焦点是否离开了一组元素
- 键盘没有在Android和BlackBerry中显示元素焦点
- 焦点和一个元素应该反映到CSS中的另一个元素
- 如何在iOS中对输入元素使用Jquery:焦点选择器
- EaselJS / canvas在拖放过程中更改元素焦点
- 使用javascript / jquery更改元素焦点(单击)上的输入/文本区域样式表
- 角度形式 - 元素焦点
- 防止元素焦点丢失(需要跨浏览器解决方案)
- 全局元素焦点监听器
- 在Angularjs中,作用域值在表单的元素焦点上重置
- 通过JS选择伪元素:焦点和:活动