I have a simple detection if a software keyboard is opened on Android and iOS:
$(document).on({
focus: function() { keyboardOpened = true; },
blur: function() { keyboardOpened = false; }
}, 'input'); //catch all focus and blur events fired on any input element
It's used to prevent certain actions while user is writing a message (e.g. ignoring resize events).
It works on all browsers except for Chrome on iOS. I've included Firebug Lite on the site but there is no error, just the events are never fired and the web does not work correctly when opening SW keyboard.
Here is a fiddle: http://jsfiddle.net/WYULR (click the input and see an alert)
Anyone knows about a reason or workaround for this?