我正在使用wshShell.SendKeys从HTA向网站输入一些文本,当我当前的键盘布局不是英文时,wshShell.SendKeys的结果是意料之外的。
我希望我的函数检查语言是英语,否则发送ALT + SHIFT将其更改为英语..对我来说很难找到一个返回当前键盘布局的函数。
如果有人熟悉这样做,我会很高兴知道..
谢谢, ROTEM
答案 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,则布局为英文,否则不是,而可能是ש
。