AngularJS中通过指令实现聚焦Focus

作者: JetLu009 | 来源:发表于2017-06-03 21:51 被阅读123次

    通过AngularJS做项目的时候,特别是表单,需要聚焦,这次就通过AngularJS的指令实现input的聚焦。

    html代码:

    <div ng-app="myApp">
      <input type="text" set-Focus>
    </div>
    

    AngularJS指令的实现代码:

    myApp.directive('setFocus', function($timeout, $parse) {
                return {
                    link: function(scope, element, attr) {
                        var model = $parse(attr.uiFocus);
                        scope.$watch(model, function(value) {
                            if (value === true) {
                                $timeout(function() {
                                    element[0].focus();
                                });
                            }
                        });
                        element.bind('blur', function() {
                            scope.$apply(model.assign(scope, false));
                        });
                    }
                };
            });
    
    

    其实还是有很多种方法实现,童鞋们开动脑筋呀,只要明白原理和思路都不是问题的。

    相关文章

      网友评论

        本文标题:AngularJS中通过指令实现聚焦Focus

        本文链接:https://www.haomeiwen.com/subject/dubmfxtx.html