jQuery聚焦文本框在Safari中输入一个字符后失去焦点

bet*_*eth 2 javascript safari jquery focus javascript-events

我有一个文本框,当单击一个元素时,它会自动聚焦jQuery:

        my_item.find('input').focus();
Run Code Online (Sandbox Code Playgroud)

它按预期在Firefox和Chrome中运行:输入区域是聚焦的,我可以开始输入它.在Safari中,行为是不同的.我点击元素,输入被聚焦,我开始在框中输入,它只允许我键入一个字符.输入第一个输入字符后,输入框失去焦点,进一步输入不起作用,除非再次手动点击进行焦点.

我发现了有关focus()Safari和Safari工作的疑问,但我认为这是一个不同的问题.我已经尝试了那里提出的解决方案,例如e.preventdefault()在mouseup和类似的情况下,没有效果.

当我在Safari中输入时,如何让我的聚焦文本输入区域保持聚焦?

Pre*_*col 8

问题有点老了,但我最近遇到了同样的问题,所以这就是我发现的.检查您的css规则是否阻止触摸标注.如果你有任何这样的规则尝试删除,然后再次尝试输入

-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
Run Code Online (Sandbox Code Playgroud)

  • 我的问题实际上是-webkit-user-select:none; (3认同)