Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对于某些语言,有没有一种方法可以通过编程方式从keyCode/which获取键名?_Javascript_Jquery_Browser_Localization_Single Page Application - Fatal编程技术网

Javascript 对于某些语言,有没有一种方法可以通过编程方式从keyCode/which获取键名?

Javascript 对于某些语言,有没有一种方法可以通过编程方式从keyCode/which获取键名?,javascript,jquery,browser,localization,single-page-application,Javascript,Jquery,Browser,Localization,Single Page Application,所以,情况是这样的: 我在html页面(应用程序)上有一个搜索字段,当用户输入时,它会给出建议 用户可以用X语言或英语在那里键入内容 (s) 他可能会忘记当前的语言布局,开始输入错误的布局 我想要实现的目标: 在输入时,对两个变量进行与字段相同的更改,一个用英语,另一个用X语言 根据这两个变量提出建议,而不是字段内容,这样,如果用户混淆了语言布局,他无论如何都会得到充分的建议 现在,问题是:是否可以将e.which或e.keyCodeprogrammaticaly转换为某种语言的标准布局

所以,情况是这样的:

  • 我在html页面(应用程序)上有一个搜索字段,当用户输入时,它会给出建议
  • 用户可以用X语言或英语在那里键入内容
  • (s) 他可能会忘记当前的语言布局,开始输入错误的布局
我想要实现的目标:

  • 在输入时,对两个变量进行与字段相同的更改,一个用英语,另一个用X语言
  • 根据这两个变量提出建议,而不是字段内容,这样,如果用户混淆了语言布局,他无论如何都会得到充分的建议
现在,问题是:是否可以将
e.which
e.keyCode
programmaticaly转换为某种语言的标准布局字母,而不列出以下内容

var keysMap = {
  ..,
  keyCode: { englishLetter: .., languageXletter: .. } ,
  ..
}
(换句话说,浏览器知道一个
keyCode
/
应该对应哪个字母吗?或者jQuery知道吗?)

我指的是两种情况:

  • 语言X是已知的(比如说,我可以硬编码)
  • 语言X未知,能否从浏览器中提取以将其简化为情况1
  • PS在某种意义上,我想实现一个类似于PuntoSwitcher/键盘忍者/。。在页面的一侧(但仅在建议生成的意义上,我猜不可能强制从网页切换键盘布局)

    PS2好的,为了澄清,让我在这里复制我对T30的评论:


    让语言X变成俄语,就像对我一样。考虑一下这个问题:我想输入“请求”,但是我的键盘布局是俄语,不是英语,所以我得到了“Yang-Yuxy”。或者我想输入俄语“зззззззаС”,但我有英文版式,所以我得到了“pfghjc”。这就是我所说的“错误布局”。我想将“pfghjc”解释为“pfghjc”和“зззззззззззззыыыыыыы。这样,即使用户没有切换到“正确”的语言,我也会帮助他。

    你说的“错误布局”是什么意思?我不明白你为什么有这么多布局。@T30好吧,让语言X变成俄语,就像对我一样。考虑一下这个问题:我想输入“请求”,但是我的键盘布局是俄语,不是英语,所以我得到了“Yang-Yuxy”。或者我想输入俄语“зззззззаС”,但我有英文版式,所以我得到了“pfghjc”。这就是我所说的“错误布局”。我想将“pfghjc”解释为“pfghjc”和“зззззззззззззыыыыыыы。这样,即使用户没有切换到“正确”的语言,我也会帮助他。问得好!(考虑编辑queston添加此评论,它可以帮助用户更好地理解这一点)听起来你只需要使用翻译api@charlietfl,你是指谷歌翻译API()还是其他什么?关键是,我也在寻找一种离线实现的方法。