Javascript 要在enter键上设置锚定标记的焦点,请按
我在我的代码中使用了锚定标记,如下所述:Javascript 要在enter键上设置锚定标记的焦点,请按,javascript,html,css,Javascript,Html,Css,我在我的代码中使用了锚定标记,如下所述: <div title="Main" > <a href="/Home.aspx"> <div class="link-title"> Home </div> </a> </div> <div t
<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>
请任何人帮我解决这个问题好吗?如果我理解正确。。。尝试将
target=“\u blank”
添加到锚
例如:
<a target="_blank" href="/Home.aspx">...</a>
$(函数(){
$('#home').focus();
})
检查此代码好的,我希望我正确理解您的问题。我认为您希望在用户按enter键浏览该链接后,导航链接保持焦点。例如,用户在主页上,单击选项卡以关注“联系我们”链接,然后按enter键。导航到新页面完成后,您希望联系人链接保持焦点 HTML: 如果使用此方法,则必须在站点的每个页面上包含此代码
编辑:清理了代码并添加了JSFIDLE链接是否希望在其他窗口中打开该链接?请澄清具体要求。它将在浏览器中打开一个新选项卡。但我想把用户重定向到同一页上。链接也不能正常工作。你是对的。但当我使用JS代码时,它给了我一个错误:无法设置属性“onkeydown”的值:对象为null或未定义。我可以用div代替nav吗??如果可能,请生成一个小提琴手。谢谢是一把小提琴,它显示了正在运行的代码。是的,您可以使用div而不是nav元素
<a target="_blank" href="/Home.aspx">...</a>
<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();
})
<div id="nav">
<a id="homeLink" href="index.html">Home</a>
<a id="contactLink" href="contact.html">Contact</a>
</div>
//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');
}