希望你的问题仍然是有趣的你。我有一段时间,我一直想拥有自己的记忆游戏。所以我开始构建你想要的功能,完整的代码请参阅Fiddle。由于小提琴框架,您必须点击一次游戏。
编辑:对不起,我的脚本中有一些垃圾代码,因为我分配了一个我自己的插件基本设置,稍后会删除它。
尚未完成,但今天我会完成它。我将它作为一个插件来构建,因为后来我想添加一些选项。但关键运动的想法应该清楚。
我创建了一个Map-Object(你也可以使用一个数组,我觉得更容易)来找到位置。
太多的代码在这里发表了这一切,所以这里的一个片段:
$(window).keydown(function (e) {
//Initial set first card as selected
var actCard, nextCard;
if ($('.cardset').find('.selected').length < 1) {
$('#card1').addClass('selected');
} else {
switch (e.which) {
case 37: // left
$('.cardset').find('.selected').cardMoveHorizont('prev', cardMap);
break;
case 38: // up
$('.cardset').find('.selected').cardMoveHorizont('up', cardMap);
break;
case 39: // right
$('.cardset').find('.selected').cardMoveHorizont('next', cardMap);
break;
case 40: // down
$('.cardset').find('.selected').cardMoveHorizont('down', cardMap);
break;
default:
return; // exit this handler for other keys
}
e.preventDefault();
}
});
我想这http://stackoverflow.com/questions/1402698/binding-arrow-keys-in-js-jquery是你在寻找 – hyde 2013-03-24 20:32:12
@smb,这不是他想要的。他不仅需要能够找到何时按下某个键,而是根据它选择div。 – Markasoftware 2013-03-24 20:33:20
他需要一个提示而不是工作解决方案,使用按键处理程序和例如类切换像“选择”,“激活”...应该工作 – hyde 2013-03-24 20:35:38