<button id="tagBtnId" name="TagsFilter" ng-show="disableTagButton">Tags</button>
ng-show застосовується display: noneабо display: blockвластивість Але я хочу подати заявку visibility: hiddenі visibility: visibleвластивість.
Відповіді:
Ви можете використовувати ng-classабо ng-styleдирективи, як показано нижче
це додасть клас myclassдо кнопки, коли тільки disableTagButtontrue, якщо disableTagButtonfalse, тоді myclassбуде видалено з кнопки
виразом переходу ng-classможе бути рядок, що представляє імена класів, розділені пробілами, масив або карта назв класів у логічні значення.
1 - назви класів, розділені пробілами
.. ng-class="{strike: deleted, bold: important, red: error}"..
2 - масив
.. ng-class="[style1, style2, style3]"..
style1, style2 & style3 - це класи css. Для отримання додаткової інформації перегляньте демонстрацію нижче.
2 - вираз
.. ng-class="'my-class' : someProperty ? true: false"..
якщо somePropertyіснує, то додайте .my-classще, видаліть його.
Якщо ім'я класу css у розділі
ng-classтире розділено, тоді вам потрібно визначити його як рядок, як.. ng-class="'my-class' : ..інакше, ви можете визначити його як рядок чи ні як.. ng-class="myClass : ..
<button id="tagBtnId" name="TagsFilter" ng-class="{'myClass': disableTagButton}">Tags</button>
<style>
.myClass {
visibility: hidden
}
</style>
Вираз передає стилі [ng стилю ][2]об’єкту, ключі якого мають імена стилів CSS, а значення - відповідні значення цих ключів CSS.
ЕКС:
.. ng-style="{_key_ : _value_}" ...=> _key_є властивістю css при _value_встановленні значення властивості. Приклад =>.. ng-style="{color : 'red'}" ...
Якщо ви використовуєте щось на зразок,
background-colorтоді його неприпустимий ключ об'єкта, тоді його потрібно вказувати так.. ng-style="{'background-color' : 'red'}" ...само, як і ng-class.
<button id="tagBtnId" name="TagsFilter" ng-style="disableTagButton">Tags</button>
тоді ваш disableTagButtonповинен бути таким
$scope.disableTagButton = {'visibility': 'hidden'}; // then button will hidden.
$scope.disableTagButton = {'visibility': 'visible'}; // then button will visible.
так що u може змінити видимість кнопки, змінивши $scope.disableTagButton.
або ви можете використовувати його як вбудований вираз, як,
ng-style="{'visibility': someVar ? 'visible' : 'hidden'}"
має someVarзначення true, тоді як для видимості встановлено значення visibleElse для видимості встановлено значення hidden.
disableTagButtonзначення, falseа потім клас автоматично myClassвидалить з кнопки, потім visibility: hiddenвидалить
Можна використовувати ng-style. Простий приклад:
<div ng-style="{'visibility': isMenuOpen?'visible':'hidden'}">...</div>
Під час виконання стиль змінюється при isMenuOpenзміні.
isMenuOpenце правда , ви будете мати style="visibility: visible".isMenuOpenце брехня , ви будете мати style="visibility: hidden".<div ng-style="{'visibility': isMenuOpen?'visible':'hidden'}">...</div>
ng-style="{visibility: isMenuOpen?'visible':'hidden'}" Цитати корисні лише зі складними словами. В іншому випадку ви можете використовувати синтаксис CAML для властивостей css, складених без лапок.
Ось проста директива, яка встановлює видимість на приховану або видиму (але не згортання):
.directive('visible', function() {
return {
restrict: 'A',
link: function(scope, element, attributes) {
scope.$watch(attributes.visible, function(value){
element.css('visibility', value ? 'visible' : 'hidden');
});
}
};
})
Використання:
<button visible='showButton'>Button that can be invisible</button>
ng-visibleдирективу.
Або якщо ви використовуєте bootstrap, використовуйте invisibleклас
ng-class='{"invisible": !controller.isSending}'
чому ви не використовуєте ng-якщо ваш тег не відображається на вашій HTML-сторінці. Я думаю, ви використовуєте це:
<button id="tagBtnId" name="TagsFilter" ng-if="disableTagButton">Tags</button>
див. https://docs.angularjs.org/api/ng/directive/ngПоказати розділ про Заміна .ng-hide
Все, що вам потрібно, це призначити клас hg-hide-animateелементу
/* style your element(s) at least for selector.ng-hide */
/* in this case your selector is #tagBtnId */
#tagBtnId.ng-hide {
/*visibility:hidden;*/
opacity: 0;
transition: opacity 1s ease-in;
}
#tagBtnId {
/*visibility:initial;*/
opacity: 1;
transition: opacity 1s ease-out;
}