1

我正在制作一个屏幕键盘,我坚持用大写锁定键和 shift 键制作代码..有人吗?

这是我的代码:

function number_write(x){
    var text_box = document.getElementById("number");
    if(x=='tab')
        text_box.value=text_box.value+'\t';
    else if(x=='enter')
        text_box.value=text_box.value+'\n';
    else if(x=='backspace')
        text_box.value=text_box.value.slice(0,-1);
    else text_box.value = text_box.value+x;
}

你能添加大写锁定和移位的代码吗?谢谢...

4

2 回答 2

1

你在找这个吗(假设 x 是关键事件)

x.shiftKey
x.ctrlKey
x.altKey

他们非常适合谷歌搜索

http://javascript.about.com/od/byexample/a/events-keymodifier-example.htm

if (x.which==bla && x.shiftKey)...
于 2013-01-08T07:31:08.943 回答
0

您正在寻找一个String.prototype.toUpperCase()

例子:

var x = 's';
x.toUpperCase();
console.log(x); // 'S'

这就是 CapsLock/Shift“功能”。

但你正在重新发明轮子。

看起来您正在检查一个元素以传递一个函数,该函数将更改输入元素中的值。

因此,如果您想使用 Javascript 中的事件触发器来制作“键盘”会更容易。

查看这篇关于刺激键的帖子

现在您可以映射您的“虚拟键盘”来触发其他元素中的按键模拟。

对于 CapsLock,您需要在事件中使用它参数的 force。

这是keydown 事件的参考。因此,您可以构建自己的,使用或不使用 shift/CapsLock/Alt...

最后你可以在 google 上搜索 Javascript Virtual Keyboard,你可能会找到这样的项目:https ://github.com/cantrell/VirtualKeyboard

于 2013-01-08T07:52:37.923 回答