Is there a way force the keyboard on iPad to close on blur of div 'contenteditable'??
Here is a basic jsfiddle: http://jsfiddle.net/j_tufte/7HDmN/
I'd like to have the keyboard close when a user clicks on the button.
Any thoughts super appreciated.
Thanks.
You should be able to do exactly that -- attach an event listener to the button and use it to
blur()
the input field that caused the keyboard popup (use JavaScript to get a handle on that element and then call it'sblur
method). That supposedly closes the iPad keyboard.As you have mentioned in your comment,
element.blur()
unfortunately doesn't work on an editable div. But you could instead move the focus to an actual input field and remove it again right away:(This uses your jsFiddle HTML code).
There are downsides to this approach: you need another input field (which you can't set to
display: hidden
orvisibility: hidden
, but you can set it's size to 0 andopacity: 0
). Also, the view may scroll to the location of this input field when the above handler is invoked. So you will need to place the second input field right next or behind to the editable div.You will also need to take care of the input field not being targeted by the previous/next buttons: set it disabled.
For focussing/blurring you will then need to enable the field:
However, this is definitely a workaround. I haven't found any other solution yet (e.g. removing the
contenteditable
attribute doesn't work) but I'd very much like to hear other ideas.