insaineyesay
9/15/2015 - 1:42 PM

autofocus directive

autofocus directive

/*
     * @ngdoc directive
     * @name autoFocus
     * @restrict A
     *
     * @example
     * <form-input-text-area
     *      data-message="Enter Button Message Here"
     *      data-ng-class="{isClosed: !formInputTextCtrl.isEdit, isOpen: formInputTextCtrl.isEdit}"
     *      data-auto-focus="boolean expression">
     * </form-input-text-area>
     * @description
     * Gives focus to input element automatically upon activation/instantiation.
     */
    ngModule.directive('autoFocus', function ($timeout, $parse) {
      return {
        restrict: 'A',
        link: function(scope, element, attrs) {
          var model = $parse(attrs.autoFocus);
          scope.$watch(model, function (value) {
            if (value === true) {
              $timeout(function() {
                element[0].focus();
              });
            }
          });
        }
      };
    });