无法将新创建的元素聚焦在ipad上

时间:2014-08-29 02:07:58

标签: javascript ios ipad focus

我有一部分代码,我可以动态创建新元素并使它们可以聚焦。

代码更复杂,但这里是reproducible part on jsfiddle(当你点击输入时,创建了下一个元素然后将焦点分配给它):

$("body").on( "keypress", ".field", function(e) {
  if ( e.keyCode  == 13 ) {
      $(this).after('<p class="field" contenteditable="true"><br></p>')
      $(this).next().focus();
      e.stopPropagation();
      e.preventDefault();
  }
});

这在桌面浏览器中按预期工作,但无法将下一个元素集中在ipad上(可能在iphone上)

1 个答案:

答案 0 :(得分:-1)

  

Apparently IOS / Safari仅在触摸事件处理程序内“接受”焦点。我触发了触摸事件并在其中插入了.focus()。我在我的iPhone3S / Safari上试过这个并且它可以工作:

Demo

Actual Stackoverflow question