目前我正在开发一个移动设备的网络应用程序,我正在使用javascript事件将焦点从一个可信的div移动到另一个。在大多数移动设备上,一切都很好,键盘也不会隐藏。我已经在android firefox和chrome以及iOS5和iOS6 safari上测试了这个。在iOS6 safari中,我发现将焦点从一个div移动到另一个div会关闭键盘并且不会改变焦点,而不是像所有其他浏览器一样保持键盘显示。
例如,如果我有
<div contenteditable="true" id="1">Stuff</div>
<div contenteditable="true" id="2">Things</div>
和
$("#1").on("keydown", function() {
$("#2").focus();
});
$("#2").on("keydown", function() {
$("#1").focus();
});
然后我希望在每个div中输入字符,这是大多数移动浏览器中发生的事情,除了iOS6 safari。
你可以在http://jsfiddle.net/8jj56/2/
的JSfiddle上找到一个简化的例子如何为iOS6获得相同类型的键盘行为?