0
私は現在の入力フォーカスを角度とタイプスクリプトで動的に取得しようとしています。 angle.element([selector])。focus(handler)関数を使用していますが、入力をクリックしてもトリガーしません。AngularJS:angular.element関数で現在のフォーカスをdinamically取得する
これは私のコードです:
class TemplateController {
lastFocused: HTMLInputElement;
static $inject = ['$scope'];
constructor(private $scope: ng.IScope) {
angular.element("input[type='text']").focus((): void => {
this.lastFocused = document.activeElement as HTMLInputElement;
console.log("FOCUSED");
});
}
}
angular
.module("app")
.controller("[...]templateController", TemplateController);
}
そして、これは私のhtml(入力スニペット)である:
...
<input class="form-control" type="text" id="title" name="title" size="30" ng-maxlength="1000" required />
...
私が間違ってやっていますか?事前に
感謝:)
編集:私はinput要素にNG-焦点属性を使用することで、この問題を解決することができました
を解決:
<input class="form-control" type="text" id="title" name="title" size="30" ng-maxlength="1000" required ng-focus="templateCtrl.setFocusedElement()" />
とコントローラ内部:
setFocusedElement(): void {
this.$scope.lastFocused = document.activeElement;
}
これが私のために正常に動作します:)