例如,如果我想要它,以便每次按下空格键(keyCode 32),计算机将其读作字母A被按下(keyCode 65),我将如何进行此操作?
说我希望有一个输入,每当这个人输入它就变成了b。
这样的事情:
<!DOCTYPE html>
<html>
<body>
<input> </input>
<script>
document.onkeydown = function(event)
{
var x = event.keyCode;
if(x == 65)
{
x = x + 1;
}
}
</script>
</body>
</html>
这是秘密信息编码的谜语游戏的一部分。例如,如果该人输入“vnbbl”,它将显示为“hello”,表示v为h,n为e等。
答案 0 :(得分:0)
如果我理解你的问题,你只想让程序以不同的方式注册密钥。
从技术上讲,您可以像这样更改x
变量:
document.onkeydown = function (event){
var x = event.keyCode;
x = (x + 33) % 126;
// 33 is the difference between 32 and 65;
// 126 is the total number of keyCodes
}
但是,使用这样的公式会在字符串中生成非字母数字字符。 (例如~
)
答案 1 :(得分:0)
您的源元素是文本输入元素吗?不确定是否欺骗了计算机,但可能会更改元素值,如下所示:
document.onkeydown = function(event)
{
var x = event.keyCode;
//source element
var elem = event.target;
if(x == 32)
{
//replacing all " " with "a", this is case sensitive, ok? so "A" and "a" are different situations...
elem.value = elem.split(' ').join('a');
}
}