再次期待你的帮助。面对小可能是愚蠢的问题。我正在为我的工作创建一个小的jQuery插件。该插件应该是完全可定制的。除了这个任务,我几乎完成了所有事情。
实际上,当用户点击输入元素并按下向上和向下箭头时,我需要分别增加和减少值。但是应该使用哪个箭头键是可自定义的。如果用户选择“updown”,那么up和arrow键应该有效。如果用户选择'leftright',则左右箭头键应分别用于增加和减少值。在这种情况下,用户需要使用向上和向右箭头键来向右和向左移动光标。因为现在左右箭头键用于其他目的。
实际上我有一个解决方案是可以使用插入位置。但是有没有其他简单的方法可以帮助我们轻松完成这项工作。PS:对不起,如果我的问题困扰你们任何人。
答案 0 :(得分:2)
您可以使用对象存储密钥代码..类似这样的
<select id="keys" >
<option value="updown"> Up - Down </option>
<option value="leftright"> Left - Right</option>
</select>
var keys = {
updown:{
inc:38,
dec:40
},
leftright:{
inc:37,
dec:39
}
}
document.onkeyup = function KeyUp(e) {
var selected = document.getElementById("keys");
var keyCode = (window.event) ? event.keyCode : e.keyCode;
if(keys[selected.value].inc === keyCode){
alert("increase.........");
}else if(keys[selected.value].dec === keyCode){
alert("decrease.........");
}
}
演示:http://jsfiddle.net/2qaJf/1/
注意:请在尝试演示时清除select元素的焦点。
答案 1 :(得分:0)
我对这个问题感到很困惑,但我明白你想要使用向上箭头键来制作箭头键。
$(document).keydown (function (e) {
if(e.which == 38){
console.log("up arrow pressed - put right arrow key function or trigger the right arrow key event here");
}
});
38 =向上箭头键事件
我希望这会有所帮助。