DIV上的Keydown引用了一些位置

时间:2014-01-04 11:11:05

标签: javascript html location-href

我知道如何让div在点击时引用某个位置

<div onclick="location.href='newurl.html';" tabindex="0"><a>Text</a></div>

但只有鼠标点击它才有效,但是如果我想通过键盘导航并按“Enter键”或“空格键”它就不会工作..

所以我想要的是这样的

<div onkeydown="location.href='newurl.html';" tabindex="0"><a>Islam</a></div>

我不想在其他地方编写代码,比如js file

2 个答案:

答案 0 :(得分:2)

只需将两个听众附加到div,然后在onkeydown中检查按下的键:

<div
  onkeydown="if(event.which===32||event.which===13) location.href='newurl.html';"
  onclick="location.href='newurl.html';"
  tabindex="0"
>
    <a>Islam</a>
</div>

A live demo at jsFiddle

答案 1 :(得分:1)

我不完全确定你想要什么,但也许你正在寻找event.keyCode。它为您提供了按键代码,您可以轻松查看EnterSpace

<div onkeydown="if(event.keyCode==13||event.keyCode==32)location.href='newurl.html'; " onclick="location.href='newurl.html';" tabindex="0">Link</div>