iOS 8第三方键盘不会注册javascript/jQuery keyup,keypress,keydown等
问题描述:
当使用像Swiftkey这样的第三方键盘按键时,不需要注册。例如谷歌地图自动完成将不起作用https://developers.google.com/maps/documentation/javascript/examples/places-autocompleteiOS 8第三方键盘不会注册javascript/jQuery keyup,keypress,keydown等
似乎像一个iOS错误,但有关如何解决这个问题的任何想法?
答
我发现使用的setInterval和解决方案的回答方法从这里Trigger Google Places Autocomplete
setInterval(function() {
if ($('input#mapSearch').is(':focus')) {
google.maps.event.trigger(document.getElementById('mapSearch'), 'focus', {});
}
}, 500);
答
您只需手动触发按键事件。
$textBox = $('#text_box') // We don't want to search the dom more than we have to.
setInterval(function(){
$textBox.trigger('keypress')
}, 500)
这绝对是一个混乱的解决方案,但它应该得到自动完成工作,以及其他等待按键的处理程序。
我有同样的问题。我开发自己的一个小键盘只是为了检查,仍然存在相同的问题。我认为这是因为ios8很年轻。 – ababab5 2014-09-28 00:16:28
我在使用swype开发科尔多瓦混合应用的android上有这个相同的问题。 – njtman 2014-10-07 15:32:15
您是否尝试设置另一个'type'或'pattern'属性?这可能会强制浏览器使用本机键盘。 – lloiser 2014-11-19 17:40:36