Html 如何关闭esc按钮上的元素?

Html 如何关闭esc按钮上的元素?,html,angularjs,Html,Angularjs,我在init上显示面板,并在按下“关闭”图标时隐藏。 当我按下“esc”按钮时,如何关闭面板? 以下是面板html: <div ng-init="vm.onInit()" class="mainContent"> <div ng-if="vm.bool" class="fade totalFolderList"> <div flex layout="row" layout-align="end end"> <

我在init上显示面板,并在按下“关闭”图标时隐藏。 当我按下“esc”按钮时,如何关闭面板? 以下是面板html:

<div ng-init="vm.onInit()" class="mainContent">
    <div ng-if="vm.bool" class="fade totalFolderList">
        <div flex layout="row" layout-align="end end">
            <div>
                <md-button ng-click="vm.hidePanel()" class="md-fab " aria-label="Use Android">
                    <md-icon md-font-icon="zmdi zmdi-close"></md-icon>
                </md-button>
            </div>
        </div>
        <div layout="row" layout-fill flex>
            <div class="folderListPanel padding-top-10" flex layout="column" layout-align="start center">
                <div>There are {{vm.foldersToJoin}} folder's to join</div>
                <div>
                    <md-input-container>
                        <label></label>
                        <input ng-model="search.name" placeholder="Filter">
                    </md-input-container>
                </div>
                <div style="overflow:auto;" class="whiteFrames">
                    <md-whiteframe class="md-whiteframe-8dp foldersInList capitalize" layout ng-repeat="folder in vm.folderList | filter:search" ng-click="vm.openFolder(folder.id)">
                        <span class="padding-left-10">{{folder.name = vm.getIterationName(folder.metadata)}}</span>
                    </md-whiteframe>
                </div>
            </div>
        </div>
    </div>
</div>

在控制器内使用
$document
服务。例如:

//inside controller code
$document.bind('keydown', function (e) {

   if (e.keyCode==27){ //27 is ESC
      //here code for hide panel
      vm.hidePanel();// if vm is local variable of controller
   }

});

在控制器内使用
$document
服务。例如:

//inside controller code
$document.bind('keydown', function (e) {

   if (e.keyCode==27){ //27 is ESC
      //here code for hide panel
      vm.hidePanel();// if vm is local variable of controller
   }

});

参考这个答案:参考这个答案:在e.keyCode==27-不起作用。例如,如果我使用e.keyCode==13-工作正常…该怎么办?谢谢。这有帮助。还有一个问题-你知道为什么当我按下“esc”时,如果我按下“enter”按钮,反应会慢一些吗?@Serhiy我不知道,但可能esc调用也在浏览器事件中生成。这只是我的问题。关于e.keyCode==27-不起作用。例如,如果我使用e.keyCode==13-工作正常…该怎么办?谢谢。这有帮助。还有一个问题-你知道为什么当我按下“esc”时,如果我按下“enter”按钮,反应会慢一些吗?@Serhiy我不知道,但可能esc调用也在浏览器事件中生成。这只是我的任务。