我定义的ID leftmenu
并在其列表元素jQueryUI的菜单更广泛的,我已经定义了一个函数上点击一个项目,具体如下:在jQueryUI的菜单项捕捉的焦点与听众比点击收听
$('#leftmenu>li').click(function() {
var clickedId = this.id;
$.ajax({
type: "POST",
cache: false,
url: "/Session/Index/",
success: function (result) {
if (result.length > 0)
{
performListItemAction(clickedId);
}
else
{
window.location.href = '/Home/Index/'
}
}
});
});
这工作正常,但现在我想改变它,以便在菜单项上代替click
,我想以更一般的方式捕获焦点和对该项目的选择,例如使用键盘。目前,我可以使用键盘上的向上和向下键浏览菜单,但内部代码不会被调用。我知道这是因为它只能在click
上发生,但是当我尝试activate
和focus
代替click
时,同样的事情发生了。
我怎样才能以更一般的方式来执行与click
相同的行为,捕获菜单项的选择和输入?
谢谢。
你尝试添加一个事件'的keydown()'和检查,看看是否被按下回车键.. –
@Pamblam我只是想'('#leftmenu> li')。keydown(function(e){ if(e.keyCode == 13){ alert('you enter enter^_ ^'); } ...和它没有工作 – ITWorker
使用'$(document).on(“keydown”,functi on(){})'并检查'document.activeelement'以查看它是否是其中一个菜单项 –