javascript - Angular 路线/输入自动对焦

标签 javascript angularjs input routes autofocus

我正在使用 Angular 路线。每个页面(路线)都有一个输入字段。我已经成功地在第一页上使用了属性 autofocus。当我导航到其他页面时,输入不会自动对焦。返回第一页不会再次自动聚焦输入。我现在明白为什么它不起作用,但想知道是否有办法实现这一点。

我是 Angular 的新手,我不确定我是否理解我读到的有关 ngFocus 的内容:

https://docs.angularjs.org/api/ng/directive/ngFocus

最佳答案

ngFocus 不是您想要的。该指令更像是一个事件触发器。只要用户将焦点放在文本框上,它就会执行您的代码。

你想要的是像这样的自定义指令:

angular
    .module('myApp')
    .directive('autofocus', function($timeout) {
        return {
            link: function(scope, element, attrs) {
                $timeout(function() {
                    element.focus();
                });
            }
        }
    });

灵感来自 http://ericclemmons.com/angular/angular-autofocus-directive/

关于javascript - Angular 路线/输入自动对焦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29933514/

相关文章:

javascript - Angular 空选项删除

javascript - 使用“取消”按钮恢复表单数据

css - 动画提交按钮

css - 标签输入或标签选择,如果输入或选择嵌套在 div 中,则焦点不起作用

Javascript 获取 JSON 数组

javascript - 如何动态获取div的内容宽度?

javascript - 如何从嵌套输入访问 html 表单值

javascript - Array.prototype.forEach() 在使用 get 处理程序的代理上调用时不起作用

javascript - 如何将服务的 promise 返回给 Controller ?

javascript - 使用不同模板的 AngularJS 指令