日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

angular.js - angular.ui:dropdown的下拉菜單關閉的偶爾失常問題

瀏覽:326日期:2024-10-10 16:50:58

問題描述

angular.js - angular.ui:dropdown的下拉菜單關閉的偶爾失常問題

本人遇到一個很奇怪的問題,點擊菜單中的選擇項,大多數情況下菜單隱藏正常,小部分情況就出現了如上圖情況。(我檢查過dropdown的is-open值,的確已經為false。)不知道問題出在哪里,請高手指教,謝謝。

以下為我的部分代碼

.directive(’pxSearchInputGroup’,function($ListCache,$filter,$timeout,$rootScope,$currentUser,$parse){ return {restrict:’EA’,scope:{ assortmentList:’=’, isOpen:’=’, inputPlaceholder:’@’, templateType:’@’, afterSelect:’&’},templateUrl:’../templates/widget/search-input-list.html’,controller:function($scope,$attrs){ var self=this,assortmentList,teamAssortment,userAssortment,teamList,userList; //var getIsOpen=$parse($attrs.isOpen); //var setIsOpen=getIsOpen.assign||angular.noop; this.init=function(){assortmentList=angular.copy($scope.assortmentList);teamAssortment= _.findWhere(assortmentList,{type:’team’});userAssortment= _.findWhere(assortmentList,{type:’user’});$scope.vm={ key:’’, isOpen:$scope.isOpen};$scope.currentUser=$currentUser.get();$scope.$watch(’vm.key’,function(newKey,oldKey){ var condition={$or:{ nickName:{$likeI:newKey }, email:{$likeI:newKey }, mark:{$likeI:newKey }, name:{$likeI:newKey }} }; if(newKey!==oldKey){if(newKey===’’||!newKey){ condition=''; $scope.isSelect=false;}if(!$scope.isSelect){ $scope.selectedItem=’’; self.doSearch(condition);}$scope.isSelect=false; }});//空白區域點擊關閉下拉菜單$scope.$on(’$changeDropMenuState’,function(e,isOpen){ $scope.vm.isOpen=isOpen;}); }; this.searchContacts=function(condition){userList=userAssortment?userAssortment.list:null;return condition &&userList? userList.$query(condition): userList; }; this.searchTeams=function(condition){teamList=teamAssortment?teamAssortment.list:null;return condition &&teamList? teamList.$query(condition): teamList; }; this.selectItem=function(item,type){$scope.isSelect=true;$scope.vm.selectedItem=item;$scope.vm.key=type==’user’ ? $filter(’pxUserName’)(item) :item.name;this.toggleDropMenu(false);if(angular.isFunction($scope.afterSelect)){ $scope.afterSelect({item:item});} }; this.doSearch=function(condition){angular.forEach($scope.assortmentList,function(assortment){ assortment.list=self.getSearchResult(condition,assortment.type);}); }; this.getSearchResult=function(condition,type){if(type==’user’){ return this.searchContacts(condition);}else{ return this.searchTeams(condition);} }; this.toggleDropMenu=function(isOpen){if($scope.templateType===’chat’){ return;}$scope.vm.isOpen=isOpen;$scope.isOpen=isOpen;//setIsOpen($scope,isOpen); };},link:function(scope,element,attr,ctrl){ ctrl.init(); scope.onItemClick=function(item,type){ctrl.selectItem(item,type); }; //此處的input有dropdown-toggle角色,當下拉菜單處于關閉狀態時,解決input輸入文字不顯示下拉菜單的問題 scope.openDropMenu=function(){$timeout(function(){ ctrl.toggleDropMenu(true);},0); };} };}).directive(’pxSearchInput’,function(){ return {restrict:’EA’,replace:true,template:’<input placeholder='' ng-model='vm.key' stop-propagation-element type='text' ng-click='openDropMenu()' ng-keydown='openDropMenu()' />’,require:[’?^pxSearchInputGroup’,’^?ngModel’],link:function(scope,element,attr,ctrl){} };}).directive(’pxAssortmentList’,function(){ return {restrict:’EA’,templateUrl:’../templates/widget/search-mode.html’,replace:true,link:function($scope,element,attr){} };})

//外部數據scope.shareConfig={ isOpen:false, searchKey:’’, isSelected:false, assortmentList:[{title:’群組’,list:scope.teams,type:’team’},{title:’對象’,list:scope.contactAndMemberList,type:’user’,iconSize:’mini’} ], typeName:’任務’};scope.closePopup=function(){ scope.shareConfig.isOpen=false; $rootScope.$broadcast(’$changeDropMenuState’,false);};

//引用的地方<p ng-click='closePopup($event)'> <h3 ng-bind='::shareItem.title||shareItem.name||shareItem.docName'></h3> <form name='shareForm' ng-submit='onSubmit($event)'><span class='px-label-name'>發送到</span> <px-search-input-group input-placeHolder='選擇當前團隊群、聯系人' assortment-list='shareConfig.assortmentList' is-open='shareConfig.isOpen' after-select='afterSelect(item)'></px-search-input-group><p class='explain'>將{{::shareConfig.typeName}}轉發給當前團隊群、聯系人。</p><p class='px-dialog-footer'> <button ng-disabled='!selectedItem'>轉發</button></p> </form></p>

//search-input-list.html<p ng-switch='templateType'> <p ng-switch-when='chat'><p class='col-sm-12'> <input px-search-input placeholder='{{inputPlaceholder}}' /></p><px-assortment-list ng-repeat='assortment in assortmentList'></px-assortment-list> </p> <p ng-switch-default><p dropdown is-open='vm.isOpen'> <input px-search-input dropdown-toggle placeholder='{{inputPlaceholder}}' /> <p role='menu' style='max-height:300px;width:100%;overflow: auto;'><px-assortment-list ng-repeat='assortment in assortmentList'></px-assortment-list> </p></p> </p></p>

//search-mode.html<p > <h6 ng-bind='::assortment.title'></h6> <p ng-if='assortment.list.length==0' ng-bind='::’沒有找到’+assortment.title' style='padding-left:20px;'></p> <ul ng-if='assortment.list.length>0' ng-class='{’px-user-list’:assortment.type==’user’}'><li ng-repeat='item in assortment.list' ng-click='onItemClick(item,assortment.type)' ng-if='item.targetUid!=currentUser.id'> <px-user-photo ng-if='assortment.type==’user’' user='item.profile||item' size='{{assortment.iconSize}}' show-status='{{assortment.showState}}'></px-user-photo> <span ng-if='assortment.type==’file’' class='file-{{assortment.iconSize}}-{{item.suffix}}'></span> <span ng-if='assortment.type==’calender’' class='px-icon icon-calendar'></span> <span ng-if='assortment.type==’task’' class='px-icon icon-task'></span> <a href='javascript:;' ng-bind='item.name' ng-if='assortment.type!=’user’'></a> <a href='javascript:;' ng-bind='::item|pxUserName' ng-if='assortment.type==’user’'></a></li> </ul></p>

問題解答

回答1:

在 $scope.vm.isOpen=isOpen;外圍套一個

$timeout(function(){ $scope.vm.isOpen=isOpen; })

看看

相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
在线亚洲欧美| 免费成人在线视频观看| 91麻豆精品激情在线观看最新| 电影亚洲精品噜噜在线观看| 精品国产黄a∨片高清在线| 福利一区二区三区视频在线观看| 国产精品99视频| 久久婷婷av| 99在线观看免费视频精品观看| 六月婷婷一区| 亚洲久久视频| 91精品麻豆| 久久久久久夜| 99久久精品网站| 欧美日韩国产探花| 婷婷视频一区二区三区| 精品在线网站观看| 日本美女一区| 久久久久久久久久久9不雅视频| 国产高清一区| 日本午夜精品久久久久| 高清日韩欧美| 婷婷色综合网| 国产情侣久久| 91精品一区二区三区综合| 亚洲制服欧美另类| 久久精品国产99国产精品| 欧美成人国产| 国产美女视频一区二区| 久久久夜精品| 日产欧产美韩系列久久99| 欧美韩日一区| 亚洲bt欧美bt精品777| 精品国产欧美日韩一区二区三区| 久久国产主播| 日韩1区2区3区| av免费不卡国产观看| 六月婷婷一区| 成人亚洲精品| 亚洲人亚洲人色久| 中文在线а√天堂| 天使萌一区二区三区免费观看| 国产精品久久久一区二区| 午夜免费一区| 粉嫩av一区二区三区四区五区 | 亚洲调教视频在线观看| 午夜久久av | 免费在线播放第一区高清av| 黄色日韩在线| 精品国产美女a久久9999| 视频一区二区三区入口| 九色porny丨国产首页在线| 国产精品久久久久9999高清| 免费人成精品欧美精品| 日产精品一区| 麻豆久久久久久| 日韩久久一区| 免费高清在线一区| 图片区亚洲欧美小说区| 日本不卡免费高清视频在线| 国产精品免费大片| 日本aⅴ免费视频一区二区三区| 亚洲综合另类| 激情欧美一区二区三区| 国产精品hd| 日韩精品免费一区二区夜夜嗨 | 国产一区二区三区天码| 7777精品| 中文字幕日本一区二区| 黄色亚洲在线| 在线日韩欧美| 亚洲va中文在线播放免费| 国内不卡的一区二区三区中文字幕| 亚洲精品大片| 免费在线观看精品| 欧美 日韩 国产一区二区在线视频| 色婷婷综合网| 欧美精品导航| 欧美成人aaa| 欧美国产先锋| 麻豆国产一区| 欧美激情综合| 美女视频黄久久| 国产精品多人| 国产精品亚洲综合久久| 国产精品美女午夜爽爽| 日本午夜精品| 国产日韩在线观看视频| 人人爱人人干婷婷丁香亚洲| 日韩精品一页| 欧美日韩一区二区三区不卡视频 | 在线一区电影| 中文一区二区| 亚洲视频电影在线| 亚洲开心激情| 日韩avvvv在线播放| 国产日韩在线观看视频| 国产乱码精品| 精品三级国产| 日韩一区电影| 午夜久久美女| 一区二区高清| 国产三级一区| 久久久久久久欧美精品| 亚洲久草在线| 欧美日一区二区三区在线观看国产免 | 午夜日本精品| 狠狠色狠狠色综合日日tαg| 黄色成人91| 亚洲深深色噜噜狠狠爱网站 | 91精品99| 国产一区导航| 四虎国产精品免费久久| 欧美日本久久| 国内自拍视频一区二区三区| 蜜桃视频在线网站| 国产美女一区| 777久久精品| 亚洲精品成人图区| 91久久黄色| 欧美日韩亚洲一区二区三区在线 | 久久精品色播| 99久久激情| 亚洲免费一区三区| 日韩一二三区在线观看| 久久99久久久精品欧美| 亚洲国产福利| 亚洲免费影视| 国产一卡不卡| 国产亚洲一区二区手机在线观看| 99视频精品视频高清免费| 男女精品网站| 国产一卡不卡| 成人va天堂| 亚洲91网站| 精品久久免费| 免费人成精品欧美精品| 国产精品一级| 激情综合激情| 日韩精品a在线观看91| 国产欧美69| 亚洲精品一区二区妖精| 日本一区二区三区中文字幕| 久久69成人| 尹人成人综合网| 久久av免费看| 国产亚洲精品v| 国产极品一区| 亚洲精品123区| 国产高清亚洲| 国产精品日韩欧美一区| 精品国产a一区二区三区v免费| 狠狠干成人综合网| 麻豆91在线播放| 四虎884aa成人精品最新| 日本va欧美va精品发布| 日韩三区免费| 久久精品av麻豆的观看方式| 国产国产精品| 国产中文欧美日韩在线| 日韩精品第一| 黄色精品网站| 成人精品动漫一区二区三区| 亚洲精品影视| 欧美日韩亚洲在线观看| 国产精品s色| 美美哒免费高清在线观看视频一区二区| 麻豆视频久久| 亚洲日本在线观看视频| 樱桃视频成人在线观看| 日本强好片久久久久久aaa| 欧美日韩一二| 成人在线观看免费视频| 日韩和欧美的一区| 国产视频一区在线观看一区免费| 蜜桃视频在线网站| 久久99高清| 国产色噜噜噜91在线精品| 国产麻豆综合| 成人羞羞视频播放网站| 久久精品欧洲| 国产日韩亚洲| 日韩欧美激情| 伊人精品久久| 国产精品7m凸凹视频分类| 日韩中文在线播放| 久久影院午夜精品| 久久精品国产网站| 麻豆精品久久久| 久久精品超碰| 91成人精品观看| 日本不卡高清| 深夜福利亚洲| 亚洲人www| 日韩精品一区二区三区中文| 中文字幕亚洲精品乱码| 亚洲色图综合| 日日夜夜免费精品| 日韩黄色在线观看| 亚洲精品中文字幕99999|