Сторонние клавиатуры iOS 8 не регистрируют javascript/jQuery keyup, нажатие клавиш, нажатие клавиш и т. д.
При использовании сторонней клавиатуры, такой как JavaScript, события Swiftkey, такие как нажатие клавиш, не регистрируются. Например, автозаполнение карт Google не будет работать https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete
Похоже на ошибку в iOS, но есть идеи, как мне обойти это?
3 ответа
Решение
Я нашел решение, используя setInterval и метод ответа отсюда Триггер Google Places Autocomplete
setInterval(function() {
if ($('input#mapSearch').is(':focus')) {
google.maps.event.trigger(document.getElementById('mapSearch'), 'focus', {});
}
}, 500);
Будет ли это работать?
jQuery('#text_box').on('input propertychange paste', function() {
// text has changed...
});
Вы можете просто вручную запускать события нажатия клавиш.
$textBox = $('#text_box') // We don't want to search the dom more than we have to.
setInterval(function(){
$textBox.trigger('keypress')
}, 500)
Это определенно грязное решение, но оно должно заставить работать автозаполнение, а также другие обработчики, которые ждут нажатия клавиш.