give_focus.ts 639 B

123456789101112131415161718192021222324252627
  1. ///<reference path="../../headers/common.d.ts" />
  2. import coreModule from '../core_module';
  3. coreModule.directive('giveFocus', function() {
  4. return function(scope, element, attrs) {
  5. element.click(function(e) {
  6. e.stopPropagation();
  7. });
  8. scope.$watch(attrs.giveFocus, function (newValue) {
  9. if (!newValue) {
  10. return;
  11. }
  12. setTimeout(function() {
  13. element.focus();
  14. var domEl = element[0];
  15. if (domEl.setSelectionRange) {
  16. var pos = element.val().length * 2;
  17. domEl.setSelectionRange(pos, pos);
  18. }
  19. }, 200);
  20. }, true);
  21. };
  22. });
  23. export default {};