在几个浏览器中tabindex似乎存在一些问题,所以我想使用javascript / jquery来解决这些问题。特别是FF3.5(Mac)不接受tabindex或根本不关注链接。我在我的网站上运行了jquery 1.3.2和js-hotkeys 0.7.9。
我在1页上有4个表单,我可以使用链接切换。现在,当页面加载时,我使用它的id获得焦点的1个链接。然后我希望能够在每个链接之间切换以显示每个表单。
剥离代码如下所示:
HTML
<nav id="postNav">
<ul>
<li class="Nav1"><a href="#">1</a></li>
<li class="Nav2"><a href="#">2</a></li>
<li class="Nav3"><a href="#">3</a></li>
<li class="Nav4"><a href="#">4</a></li>
</ul>
</nav>
<form class="postForm" id="post1">
</form>
<form class="postForm" id="post2">
</form>
<form class="postForm" id="post3">
</form>
<form class="postForm" id="post4">
</form>
Jquery的
$(document).ready(function(){
$("#postNav ul li a").click(function(event){
var postOptionSelected = $(this).parent("li").attr("class").substr(3);
$("form#post"+postOptionSelected).show();
$("form.postForm:not(#post"+postOptionSelected+")").hide();
event.preventDefault();
});
});
答案 0 :(得分:4)
这不是Firefox问题。这是Mac OS的系统设置。在“系统偏好设置”中,键盘&amp;鼠标和键盘快捷键,有一个全键盘访问设置,允许用户配置他们是否希望使用Tab键将键盘焦点更改为仅文本框和列表或所有控件。它默认设置为文本框和列表。
Mac OS上的Safari在Safari,偏好设置,高级设置中有一个设置,按Tab键突出显示网页上的每个项目以覆盖此行为。
答案 1 :(得分:0)
我想你忘记了“帖子”之后的“表格”:
$("form#postForm"+postOptionSelected).show();
$("form.postForm:not(#postForm"+postOptionSelected+")").hide();