2014-09-13 57 views
1

我想通过Javascript在Chrome上隐藏IME(输入法引擎)窗口。当我将IME类型设置为类似片假名时,在输入内容(例如'do'),然后在更改为正确的字符后,在该框中单击。在OSX上的Chrome中隐藏输入法窗口

我到隐藏该窗口中的最接近像下面的一个黑客:http://jsfiddle.net/8ofc47r7/1/

$('input').blur(); 

在我看来,要显示的IME窗口的事件jQuery的$ .keyDown事件之前被触发,所以即使我将keyDown事件设置为返回false,我仍然会看到窗口闪烁。

回答

0

使用javascript或jQuery,您可以将属性type设置为tel

使用CSS,你可以尝试这一个或两个:(完全取决于你的Chrome浏览器版本!)

-webkit-ime-mode:disabled; 
ime-mode: disabled; 

该解决方案为我工作。如果不适合你,你可以添加!important属性。

只要记住,在使用Chrome的情况下,语法IME是:

-webkit-ime-mode: auto | active | inactive | disabled 
ime-mode: auto | active | inactive | disabled 

你的情况适当的值应为:disabled这两个属性。一个重要的事情:目前只支持内联样式(例如<input style="ime-mode: disabled;">)。外部CSS或<style></style>标记不受支持

希望它有用!

+0

谢谢,我已经尝试过,但它不适用于Chrome。 – Leonidas 2014-09-15 19:24:18

+0

[Leonidas](http://stackoverflow.com/users/193856/leonidas)我只是重新编辑答案。检查它是否适合你。 – Academia 2014-09-21 15:20:01