假设我有一个带有标题菜单的网页,当我点击标题菜单时,它会调用一个创建侧边栏的servlet。是否有可能不使用document.getElementById?只需通过javascript模拟击键“tab”和“enter”,这样我就不必点击菜单查看侧边栏了吗?
答案 0 :(得分:0)
你能描述一下你想要达到的目标吗?
我的理解是,您希望能够使用标签按钮显示(也可能隐藏)侧边栏。
您可以在jQuery中使用.keypress()函数 - http://api.jquery.com/keypress/
另请参阅Nettuts上的本教程,我认为它可能对您有用 - http://net.tutsplus.com/tutorials/javascript-ajax/how-to-create-a-keypress-navigation-using-jquery/
答案 1 :(得分:0)
您可以在制作菜单的元素上使用属性tabindex
。
例如:<ul tabindex="1">...
并在打开页面时将焦点设置在第一个上。
按Tab键时,它们将作为表单字段。
然后,对于所有菜单项共有的父节点上的单个onkeyup侦听器:
menuParent.onkeyup = function(ev){
var selectedMenu = ev.target || ev.srcElement,
keycode = ev.keyCode;
if(keycode === 13){
//the user pressed enter
}
...
}
答案 2 :(得分:0)
你可以使用JavaScript做你想做的事情,但有一种比模拟击键更容易的方法。
我假设单击链接时发生的情况是调用了JavaScript函数,导致子菜单出现。你需要做的就是找出那个函数调用是什么(让我们说它叫做“callTheFunction”),然后调用onload,就像这样:
<script type="text/javascript">
window.onload=callTheFunction;
</script>
希望这会给你这个想法。如果您需要更多帮助,请提供URL或代码示例。