{"id":1361,"date":"2017-10-26T10:51:43","date_gmt":"2017-10-26T11:21:43","guid":{"rendered":"https:\/\/mind4y.com\/itstuff\/?p=1361"},"modified":"2020-03-19T23:24:03","modified_gmt":"2020-03-19T23:54:03","slug":"javascriptangularjstypescript-using-directive-focus","status":"publish","type":"post","link":"https:\/\/ultering.com\/it4us\/?p=1361","title":{"rendered":"ANGULARJS: TYPESCRIPT &#8211; USING DIRECTIVE FOR FOCUS"},"content":{"rendered":"<p>&nbsp;<\/p>\n<pre>import angular = require('angular');\r\n\/* @ngInject *\/\r\nexport class SetFocus implements angular.IDirective {\r\n  private $log: angular.ILogService;\r\n  publicstaticFactory(): angular.IDirectiveFactory {\r\n    return () = &gt;newFocus();\r\n  }\r\n  publiclink:angular.IDirectiveLinkFn = (scopeS: angular.IScope, elementS: JQuery, attrsS: angular.IAttributes) =&gt; {\r\n    if (!this.$log) {\r\n      this.$log=angular.injector(['ng']).get('$log');\r\n    }\r\n    if (attrsS.focus==='true') {\r\n      elementS[0].focus() ;\r\n    }\r\n    scopeS.$on(attrsS.focus, (e) =&gt; {\r\n    elementS[0].focus();\r\n    });\r\n  }\r\n};\r\n\/\/ Remove on Angular 2\r\nrequire('..\/..\/operations.module')\r\n.directive('setFocus', () =&gt; new SetFocus());\r\n<\/pre>\n<div>\n<pre class=\"lang-js prettyprint prettyprinted\"><code><span class=\"pln\">$scope<\/span><span class=\"pun\">.<\/span><span class=\"pln\">addNewItem <\/span><span class=\"pun\">=<\/span> <span class=\"kwd\">function<\/span> <span class=\"pun\">()<\/span> <span class=\"pun\">{<\/span>\r\n    <span class=\"com\">\/* stuff here to add a new item... *\/<\/span><span class=\"pln\">\r\n\r\n    $scope<\/span><span class=\"pun\">.<\/span><span class=\"pln\">$broadcast<\/span><span class=\"pun\">(<\/span><span class=\"str\">'newItemAdded'<\/span><span class=\"pun\">);<\/span>\r\n<span class=\"pun\">};<\/span><\/code><\/pre>\n<\/div>\n<div>\n<pre class=\"lang-html prettyprint prettyprinted\"><code><span class=\"tag\">&lt;input<\/span> <span class=\"atn\">type<\/span><span class=\"pun\">=<\/span><span class=\"atv\">\"text\"<\/span> <span class=\"atn\">focus-on<\/span><span class=\"pun\">=<\/span><span class=\"atv\">\"newItemAdded\"<\/span> <span class=\"tag\">\/&gt;<\/span><\/code><\/pre>\n<\/div>\n<!--CusAds0-->\n<div style=\"font-size: 0px; height: 0px; line-height: 0px; margin: 0; padding: 0; clear: both;\"><\/div>","protected":false},"excerpt":{"rendered":"<p>&nbsp; import angular = require(&#8216;angular&#8217;); \/* @ngInject *\/ export class SetFocus implements angular.IDirective { private $log: angular.ILogService; publicstaticFactory(): angular.IDirectiveFactory { return () = &gt;newFocus(); } publiclink:angular.IDirectiveLinkFn = (scopeS: angular.IScope, elementS: JQuery, attrsS: angular.IAttributes) =&gt; { if (!this.$log) { this.$log=angular.injector([&#8216;ng&#8217;]).get(&#8216;$log&#8217;); } if (attrsS.focus===&#8217;true&#8217;) { elementS[0].focus() ; } scopeS.$on(attrsS.focus, (e) =&gt; { elementS[0].focus(); }); } }; \/\/ &#8230; <a href=\"https:\/\/ultering.com\/it4us\/?p=1361\" class=\"more-link\">Read More<span class=\"screen-reader-text\"> &#8220;ANGULARJS: TYPESCRIPT &#8211; USING DIRECTIVE FOR FOCUS&#8221;<\/span> &raquo;<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[26],"tags":[],"class_list":["post-1361","post","type-post","status-publish","format-standard","hentry","category-javascript"],"_links":{"self":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/1361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1361"}],"version-history":[{"count":2,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/1361\/revisions"}],"predecessor-version":[{"id":2640,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/1361\/revisions\/2640"}],"wp:attachment":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}