我正在使用最新的 jQueryUI 菜单代码,但是当我进入菜单并通过按 Enter 键选择一个链接时,包含合适的 a href 的 li 不会打开。获得打开链接的唯一方法是用鼠标单击,但我希望 Enter 键能够实现可访问性。这是我正在使用的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Menu - Navigation Menu</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.0/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$( "#menu" ).menu({
select: function( event, ui ) {
var link = ui.item.children( "a:first" );
if ( link.attr( "target" ) || event.metaKey || event.shiftKey || event.ctrlKey ) {
return;
}
location.href = link.attr( "href" );
}
});
});
</script>
</head>
<body>
<ul id="menu">
<li><a href="http://www.yahoo.com" target="_blank">Yahoo</a></li>
<li>
<a href="http://www.bing.com" target="_blank">Bing</a>
<ul>
<li><a href="http://www.google.com" target="_blank">Google</a>
<ul>
<li><a href="http://www.lycos.com" target="_blank">Lycos</a></li>
</ul>
</li>
<li><a href="?Saarland">Saarland</a></li>
<li><a href="?Salzburg">Salzburg</a></li>
</ul>
</li>
</ul>
</body>
</html>
这是一个实时版本: http: //kavelookout.com/menuTest_jQueryUI_Menu/ 列表中的“搜索引擎”文本具有超链接。
也许我需要编辑 jquery-ui.js 文件?我搜索了高低,但找不到合适的答案。
非常感谢任何帮助,
R