繁体   English   中英

对焦功能不起作用

[英]Focus function is not working in angular

简单的焦点不是有角度的

<div class="search pull-right tab-{{ showDetails2 }}" data-ng-click="showDetails2 = !showDetails2; showDetails = false; showDetails1 = false;searchFocus();">

HTML

<input type="text" data-ng-model="model.fedSearchTerm"
                    placeholder="New Search" required class="span12 fedsearch-box" />

我的功能

$scope.searchFocus = function() {
            $('.fedsearch-box').focus();
        };

我遇到了同样的问题。 通过将焦点命令包含在$ timeout内来解决它。 确保在.controller函数中传递$ timeout参数。

$timeout(function() { $('.fedsearch-box').focus(); });

这是一个更强大的实现,非常有效:

myApp.directive('focusMe', function () {
    return {
        link: function(scope, element, attrs) {
            scope.$watch(attrs.focusMe, function(value) {
                if(value === true) {
                    element[0].focus();
                    element[0].select();
                }
            });
        }
    };
});


<input type="text" ng-model="stuff.name" focus-me="true" />

你可以为此目的写一个指令;

myApp.directive('focus', function () {
  return function (scope, element, attrs) {
           element.focus();
  }
});

在你的HTML中;

<input type="text" data-ng-model="model.fedSearchTerm"
                    placeholder="New Search" required focus />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM