<button id="tagBtnId" name="TagsFilter" ng-show="disableTagButton">Tags</button>
ng-show 적용 display: none
또는 display: block
재산 그러나 나는 적용 visibility: hidden
하고 visibility: visible
재산.
답변:
다음과 같이 ng-class
또는 ng-style
지시문을 사용할 수 있습니다.
이것은 true 일 myclass
때만 버튼 에 클래스 를 추가 하고, false disableTagButton
일 때 버튼에서 제거합니다.disableTagButton
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>
표현식 은 키가 CSS 스타일 이름이고 값이 해당 CSS 키에 해당하는 값인 객체에 [
ng 스타일 평가를 전달합니다 ][2]
.
전의:
.. ng-style="{_key_ : _value_}" ...
=> 속성 값 _key_
을 _value_
설정하는 동안 css 속성 입니다. 예 =>.. 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.
을 변경하여 버튼의 가시성을 변경할 수 있습니다 $scope.disableTagButton
.
또는 인라인 표현식으로 사용할 수 있습니다.
ng-style="{'visibility': someVar ? 'visible' : 'hidden'}"
인 someVar
에 true의 가시성 세트로 평가 visible
에 그렇지 가시성 설정 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'}"
따옴표는 복합어에만 유용합니다. 그렇지 않으면 따옴표없이 구성된 css 속성에 CAML 구문을 사용할 수 있습니다.
다음은 표시 여부를 숨김 또는 표시 (축소는 아님)로 설정하는 간단한 지시문입니다.
.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
지시문을 추가해야 합니다.
또는 부트 스트랩을 사용하는 경우 invisible
클래스를 사용하십시오.
ng-class='{"invisible": !controller.isSending}'
태그가 html 페이지에서 렌더링되지 않으면 ng-if를 사용하지 않는 이유 . 나는 이것을 사용한다고 생각합니다.
<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;
}