我有上面的脚本,CheckFiddle或以下
<script type="text/javascript">
function check(e){
var text = e.keyCode ? e.keyCode : e.charCode;
switch(text){
case 81:
text = 'መ';
break;
case 87:
text = 'ሙ';
break;
case 69:
text = 'ሚ';
break;
case 82:
text = 'ማ';
break;
case 84:
text = 'ሜ';
break;
case 89:
text = 'ም';
break;
case 85:
text = 'ሞ';
break;
}
if(text == 8){
var str = document.getElementById("out").innerHTML;
var foo = str.substring(0, str.length -1);
document.getElementById("out").innerHTML = foo;
}else {
document.getElementById("out").innerHTML += text;
}
}
</script>
<input type='text' onkeyup='check(event);' id='in' />
<div id='out' ></div>
当它们被输入时,它只会将一些qwerty
字母更改为另一个 unicode。意思是,每个字母都被转换成另一个字母,但问题是,有些字母只能通过两个击键组合创建,一起或单独创建。IE
1,当你m
快速按下then时,o
它应该生成'x';2,或者当你按下shif + p
它时,它应该生成'y'
问题在于,代码每笔只能识别一个字母。我尝试使用
if(text == 77+79){ // this is for m + o
text 'x';
}
甚至对于应该在内部输出上述参数的shift
+
,但它不起作用。p
z