解决安卓端拿不到软键盘真实keycode值,全为229。

最近在写移动端项目的时候,要实现输入@弹出浮层的效果,但是安卓端拿不到@键的ascii码值,原因好像是输入法阻止了,除了常用功能键,所有keycode都是229。

百度了一下,大家都说用把keydown换成keyup解决了此问题,我试了下没有成功,这个好像是解决中文输入法下的bug,最后google了一下,换了个方法解决了。代码如下:

editor.addEvent(iframe.contentWindow,'textInput', function(e) {
                var char = e.data;
                var keyCode = char.charCodeAt(0)
                alert(keyCode)
            }),

用textinput代替keyup,实际上就是拿到内容手动转了一下。
代码链接: https://codepen.io/ashconnolly/pen/WyWgPG

你可能感兴趣的:(解决安卓端拿不到软键盘真实keycode值,全为229。)