programing

AngularJS에서 CSS 스타일을 변경할 수 없습니다.

megabox 2023. 10. 21. 10:18
반응형

AngularJS에서 CSS 스타일을 변경할 수 없습니다.

어떤 이유로 다음을 사용하여 요소의 스타일을 변경할 수 없습니다.

angular.element("#element").style.height = 100px;

저는 확신합니다.angular.element("#element")DOM 요소를 반환하기 때문에 작동합니다.또한, 이 기능은 다음과 같습니다.

angular.element("#element").addClass('something');

(내가 찾은 모든 것은 ngStyle에 관한 것인데 내가 찾는 것은 아닌 것 같습니다?)

다른 걸 써야 할까요?

만약 그렇다면 : 뭐? 왜?.style.something안 되나요?

문서에 따르면:

참고: Angular의 모든 요소 참조는 항상 jQuery 또는 jqLite로 감싸집니다. 이는 원시 DOM 참조가 아닙니다.

그래서..style속성은 랩핑된 속성이므로 직접 사용할 수 없습니다.


ivarni의 접근 방식을 사용하여 HTML 요소를 파악할 수 있습니다.angular.element(...)[0].style...) 또는 jQuery's/jqLite's를 사용합니다..css()방법:

angular.element('#element').css('height', '100px');

앵귤러스elementDOM 요소 자체가 아닌 DOM 요소를 랩하는 것을 반환합니다.JQuery Selector와 마찬가지로 기본 요소에 액세스할 수 있습니다.

angular.element("#element")[0].style.height = 100px;

물론, ID를 사용할 때 일치하는 항목이 한 개 있다고 가정합니다.

jQuery 없이 Angular를 실행하는 경우 다음과 같이 작동합니다.

angular.element(document.querySelector("#element"))[0].style.height = "100px";

이온성 어플리케이션으로 테스트를 해봤습니다.

언급URL : https://stackoverflow.com/questions/24365428/cant-change-css-style-in-angularjs

반응형