使用tab键在Safari和Chrome中不工作的对话框元素内循环
Looping inside dialog box elements using tab key not working in Safari and Chrome
我有一个弹出对话框,有按钮和输入字段,可以通过选项卡导航。一旦焦点到达最后一个元素,我想将焦点返回到对话框的第一个元素。我不希望焦点离开对话框。我知道它可以使用jquery ui处理,但我已经创建了很多弹出窗口,我想要一个解决方案没有jquery ui对话框。
我使用jquery实现了一个通用的解决方案。我在对话框的末尾添加了一个没有任何可见文本的元素,当焦点到达该元素时,我将焦点返回到第一个元素。
<input id="firstElement" type="text"/>
<input type="button" value="Submit"/>
<a id="lastHiddenElement" href="#"/>
$(document).ready(function() {
$('#lastHiddenElement').focus(function(){
$('#firstElement').focus();
});
});
http://jsfiddle.net/WVDz3/7/但这只适用于Firefox和IE,不适用于Safari和Chrome。这似乎是webkit的一个bug(可用性)
https://code.google.com/p/chromium/issues/detail?id=168121如果我添加锚标记与可见文本,它在webkit中也工作。
jsfiddle.net/WVDz3/9/
但是我想在不向用户显示任何不需要的元素的情况下进行导航。
是否有其他解决方法?
你可以用opacity: 0;
制作你的最后一个元素
这将使它不可见,并将与您当前的jQuery脚本工作
你还应该知道,如果你想让你的a
设置焦点,它需要一些文本:
<a id="lastHiddenElement" href="#">hidden</a>
CSS: #lastHiddenElement { opacity: 0; width:0; height: 0; }
Demo: http://jsfiddle.net/EPjsE/
相关文章:
- 如何在批准露天共享中工作流的审核步骤之前添加确认对话框
- Jquery对话框('打开')不工作
- jquery如何让这个对话框的“确定”按钮工作
- 选中的单选按钮在jQuery模式对话框中不能正常工作
- 如何让Knockout可观察数组与jQuery对话框一起工作
- Dropzone插件在jQuery对话框中工作
- Jquery 移动对话框关闭无法正常工作
- 自定义确认对话框无法正常工作
- jQuery 模式对话框在刷新后的第一页上工作正常,但在此之后的任何其他页面上都无法正常工作,除非刷新
- jquery对话框导致其他函数无法工作
- AngularUI模式对话框不工作
- jQUery UI对话框-它能像iFrame一样工作吗
- jquery对话框没有'我在手风琴mvc剃须刀上工作
- Facebook JavaScript发送对话框,回调函数工作不正确
- JavaScript Conform对话框不工作,如果我放入Asp.Net验证控件
- [ASP.NET]Jquery UI模式对话框不工作
- JQuery Alertify确认对话框工作不正常
- Facebook请求对话框可在Chrome中工作,但不能在IE中工作
- 关闭JQueryUI对话框只能工作一次
- dijit中的TinyMCE编辑器.对话框:链接对话框不工作