2014-06-18 3 views
1

Dojo를 사용하여 div의 인라인 스타일을 바꾸려고합니다. 다른 인라인 속성에는 영향을 미치지 않고 min-height 속성 만 변경하려고합니다.인라인 div 스타일 바꾸기

<div id="divid" class="divclass" style="width: 950px; min-height: 225px;"> 

가 여기 내 스크립트 문자열입니다 :

dojo.query('div.divclass').css("min-height", "0px"); 

하지만 전혀 영향이없는 것으로 보인다

여기에 내 현재 HTML입니다. 내가 을 .attr()으로 바꾸려고하면 다른 스타일을 제거하는 것 외에는 문제가 없습니다. .attr('style', 'min-height:0px');
수동으로 div 코드를 편집하는 것은 해결책이 아니므로 해결 방법을 찾고 있습니다. 나 또한 다른 클래스를 추가하려고 시도했지만 인라인 스타일이이를 덮어 씁니다.

jQuery 사이트에서 .css() 부분을 얻었으므로 Dojo와 호환되지 않을 수 있습니다. 죄송합니다. 저는이 일에 아주 익숙합니다.

감사

뿐만 (jQuery를 비교) 도장의 대안이있다

답변

0

그러나,이 함수는, 예를 들면, css() 대신에 style()라고 :

dojo.query('div.divclass').style("min-height", "0px"); 

또한,이 기능은 기본적으로 사용할 수없는 경우 모듈 dojo/NodeList-dom을로드해야합니다. NodeList (dojo/query 모듈을 사용할 때 얻을 수있는 노드 목록)에 대한 추가 DOM 기능이 포함되어 있기 때문입니다.

주의 할 점 : DOM을로드하기 전에 DOM이로드되었는지, DOM이로드되지 않았는지, 쿼리 할 항목이 없는지 확인하십시오. (AMD 사용)

전체 예는 다음과 같습니다

require([ "dojo/query", "dojo/NodeList-dom", "dojo/domReady!" ], function(query) { 
    query('div.divclass').style("min-height", "0px"); 
}); 

dojo/domReady! 모듈은 jQuery를에 $(document).ready() 비슷합니다, 당신이 그것을 쿼리하기 전에 DOM이로드되었는지 확인합니다.

실제 예제는 JSFiddle에서 찾을 수 있습니다. http://jsfiddle.net/Eu9Br/

+0

감사합니다! 나는 당신의 메서드를 사용하여 작업하고있어, 하이픈이 문제를 일으키는 것처럼 코드에서 "min-height"를 "minHeight"로 대체해야했습니다. – dust