在JavaScript中获取当前的键盘布局语言

时间:2010-12-09 20:33:11

标签: javascript windows keyboard-layout

我正在使用wshShell.SendKeys从HTA向网站输入一些文本,当我当前的键盘布局不是英文时,wshShell.SendKeys的结果是意料之外的。

我希望我的函数检查语言是英语,否则发送ALT + SHIFT将其更改为英语..对我来说很难找到一个返回当前键盘布局的函数。

如果有人熟悉这样做,我会很高兴知道..

谢谢, ROTEM

2 个答案:

答案 0 :(得分:3)

好的,我是用“影子巫师”的帮助制作的。

这是代码,如果有人想知道(=

谢谢!

    var lastKeyPressed = 0;

function sendKey()
{
    var WshShell = new ActiveXObject("WScript.Shell");
    WshShell.SendKeys( 'a' );
}

function getCurLayout()
{
    sendKey();
    setTimeout("lastKeyLang()",10);
}

function lastKeyLang()
{
    if( lastKeyPressed == 97 )
        alert( 'EN' );
    else
        alert( 'HE' );  
}

document.onkeypress = saveLastKey;  
function saveLastKey()
{
    lastKeyPressed = window.event.keyCode;
}

答案 1 :(得分:0)

将“A”发送到文本框,请按照以下方式阅读:

nValue = oTextbox.value.charCodeAt(0);

如果nValue为65,则布局为英文,否则不是,而可能是ש