Javascript 角度-无法命名元素-如何访问$focus之类的模型属性?
我正在使用一个自定义指令,它附加了一些html,包括我必须引用的输入。问题是我无法命名此输入。我需要获得$focus属性。如何做到这一点?我的意思是通常我会使用类似于:Javascript 角度-无法命名元素-如何访问$focus之类的模型属性?,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我正在使用一个自定义指令,它附加了一些html,包括我必须引用的输入。问题是我无法命名此输入。我需要获得$focus属性。如何做到这一点?我的意思是通常我会使用类似于: ng-show="myForm.myElement.$focus" 但既然这是不可能的,我正在寻找 ng-show="angular.getModelFor('#closestElement > input').$focus" 当然,这个功能并不存在。有一个使我能够引用$元素本身,即 angular.element(d
ng-show="myForm.myElement.$focus"
但既然这是不可能的,我正在寻找
ng-show="angular.getModelFor('#closestElement > input').$focus"
当然,这个功能并不存在。有一个使我能够引用$元素本身,即
angular.element(document.querySelector('#closestElement > input'))
但是这只给了我HTML/jQuery元素,它不包含必需的字段$focus。如何以类似的方式引用它
谢谢 要获得$focus属性,为什么不能使用ng focus指令并实现您的功能呢 如果您想要元素的$focus属性,请使用指令链接函数,您将获得ele
>
>姓名:
>聚焦
>模糊
>
>角度.module('App',[]).controller('Ctrl',['$scope',
>职能($范围){
>$scope.rors=true;
>
>$scope.errors=函数(操作){
>如果(动作==“显示”){
>$scope.rors=true;
>}其他{
>$scope.rors=false;
> }
> } }]);
我不是这个意思。这是两个不同的元素,其中一个我无法控制。如果我对你的问题的理解是正确的,那么第一个元素应该在另一个元素被关注时显示,但我无法命名被关注的元素。如果您想从外部触发事件,可以选择jquery lite。我不想触发事件。我想知道元素是否集中。
> <div ng-app="App" ng-controller="Ctrl">
> Name: <input ng-focus="errors('hide')" ng-blur="errors('show')" />
> <p ng-show="!showErrors">focus</p>
> <p ng-show="showErrors">blur</p> </div>
>
> angular.module('App', []) .controller('Ctrl', ['$scope',
> function($scope){
> $scope.showErrors = true;
>
> $scope.errors = function(action){
> if(action==="show"){
> $scope.showErrors = true;
> }else{
> $scope.showErrors = false;
> }
> } }]);