我在我的代码中使用了Anchor标记,如下所述:
<div title="Main" >
<a href="/Home.aspx">
<div class="link-title">
Home
</div>
</a>
</div>
<div title="Contact" >
<a href="/Contact.aspx">
<div class="link-title">
Contact
</div>
</a>
</div>
在输入键上按此按钮可打开特定页面/链接,但默认选项卡导航从URL开始。 我想要的是,在TAB导航期间,当它选择特定链接时,然后在Enter键上按下specfic页面/链接将打开并聚焦 应保留在该链接/锚标记上。目前,它会从URL移动并启动默认导航。
我使用过这个CSS代码:
/* To set keyboard focus on Tab press*/
a:focus
{
outline: 1px dotted black;
}
请有人帮我解决这个问题吗?
答案 0 :(得分:1)
<div title="Main" >
<a href="/Home.aspx" id="home">
<div class="link-title">
Home
</div>
</a>
</div>
<div title="Contact" >
<a href="/Contact.aspx">
<div class="link-title">
Contact
</div>
</a>
</div>
$(function(){
$('#home').focus();
})
检查此代码
答案 1 :(得分:1)
好的,我希望我能正确理解你的问题。我认为您希望导航链接在用户按Enter键以浏览该链接后保持专注。例如,用户在主页上,选项卡专注于“联系我们”链接,然后按Enter键。导航到新页面完成后,您希望联系人链接保持清晰。
HTML:
<div id="nav">
<a id="homeLink" href="index.html">Home</a>
<a id="contactLink" href="contact.html">Contact</a>
</div>
JS:
//attach event listener to #nav (doesn't work in IE8)
document.getElementById('nav').addEventListener("keydown", storeLinkId, false);
//function stores ID attribute of target link
//into session storage if enter is pressed
function storeLinkId(e) {
if (!e) e = window.event;
var keyCode = e.keyCode || e.which;
if (keyCode == '13') {
console.log("storing " + e.target.id);
sessionStorage.setItem('tabbed-link', e.target.id);
}
}
//if there is a linkid in session storage
if (sessionStorage.getItem('tabbed-link')) {
//get the id from session storage
var linkId = sessionStorage.getItem('tabbed-link');
//focus on the link with the matching id attribute
document.getElementById(linkId).focus();
//delete the linkid from session storage
sessionStorage.removeItem('tabbed-link');
}
如果您使用此方法,则必须在网站的每个页面上包含此代码。 Here's a working example
已编辑:已清理代码并添加了jsFiddle链接
答案 2 :(得分:0)
如果我理解正确...尝试将function filterCustomerData(route,day) {
var jsonCustData = JSON.parse(localStorage.getItem("db"));
console.dir(jsonCustData); // object array with 300+ objects
console.log( "route is: " + route + " day is: " + day);// route is: 3 day is: WED
var routes = jsonCustData.filter(function(ele, ind,arr){
return ele.route_id == route && ele.route_day == day;
});
console.dir(routes); // Array[0]
fillCustomerData(routes);
}
添加到主播
示例:
target="_blank"