HTML5 自动对焦不适用于生成的 View

标签 html autofocus

我正在为我的网络应用程序使用 EmberJS,当我创建新记录(在编辑模式下设置)时,我的第一个字段(输入文本)设置了 autofocus="autofocus"参数。它第一次在 Chrome 上运行没有问题,但之后就不行了。

页面加载一次,因为它是一个 Ember 应用程序,当我创建新记录时, View (记录 View )正在重新生成。

知道如何解决这个问题吗?

编辑: 我已经删除了 autofocus 属性,并且只尝试像 https://stackoverflow.com/a/14763643 中那样使用 Jquery focus()

App.FocusedTextField = Em.TextField.extend({
    didInsertElement: function() {
        this.$().focus();
    }
});

现在,连第一次都没有焦点。此外,如果我尝试将 this.$().focus(); 替换为 this.$().hide();,则输入会被隐藏。控制台中的 this.$() 也显示了正确的输入,但是 focus() 不起作用!

最佳答案

我会考虑将您的输入移动到 View 或组件,然后在 didInsertElement 函数中执行类似 this.$().focus(); 的操作。

关于HTML5 自动对焦不适用于生成的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25249060/

相关文章:

HTML/CSS - [shopify (brooklyn theme)] 我可以在 HTML 中更改尺寸/颜色,但想在 CSS 中进行

android - SurfaceView 中的自动对焦

不支持连续自动对焦模式时的 Android 自动对焦

reactjs - 使用react-final-form时如何使输入字段自动聚焦?

html - 向表格添加边距的跨浏览器方式?

html - 无法在 Web 应用程序中加载静态内容(图像/JS)

jQuery 水平 slider 不能在一个页面上工作,而另一个页面正在工作?

html - 如何在 react 正在渲染的输入上设置自动对焦

firefox - 如何防止 NVDA 自动将焦点设置在最后使用的 HTML 元素上?

javascript - 当 iFrame 导入 JS 库时,浏览器实际上会再次导入该库吗?