当onFocus和hide和onBlur组合在角度js时显示

时间:2015-12-17 10:16:52

标签: javascript html css angularjs cursor

我有一个输入框,其中包含建议列表。我希望只有当输入框被光标和光盘聚焦时才会显示的建议。从输入框中删除光标时隐藏建议。

目前我正在以下面的困难方式进行。

HTML

   <input ngFocus="showSuggesions('div_id') ng-blur="hideSuggesions('div_id')" > 

JavaScript

    $scope.showSuggessions = function(div_id){
       document.getElementById(div_id).style.display = "block";
    }
    $scope.hideSuggessions = function(div_id){
       document.getElementById(div_id).style.display = "none";
    }

我想要的是

<input ngFocus=( iftrue ? ngShow.div_id : ngHide.div_id )>

我是angularJS的新手,我认为以简单的方式做这件事会让这段代码更具可读性。我不知道angulaJS的许多功能。如果这个问题完全没有意义,我很抱歉。

1 个答案:

答案 0 :(得分:2)

这个怎么样?

 <input ng-focus="showSuggestions = true" ng-blur="showSuggestions = false" > 
 <div id="div_id" ng-show="showSuggestions"></div>

div是包含建议的元素。在您输入的焦点上,您将显示div和on blur,您将隐藏它。请注意,在模糊时,“将光标移开”并不相同。

小心拼写“showSuggestions”。