2012-04-27 5 views
1

흥미로운 문제가 있습니다. jQuery (줄 목록)를 사용하여 일부 데이터를 아약스를 통해로드 한 다음 div에 넣습니다. 그러면 div에 추가되어 결국 문서에 추가됩니다. 이처럼 sth을하려고 할 때jQuery, js, ajax, div 요소 높이가 잘못되었습니다.

doc.append(myDiv); 
console.log(myDiv.height()); 

잘못된 높이 (문서 관리자가 다른 값을 표시 함)가 표시됩니다. 그러나 내가 (예 : 750ms) 기다렸다가 높이를 얻으려고하면 괜찮습니다.

그리고 내 질문이 있습니다, 나는 잘못하고 있습니까? 아니면 브라우저의 정상적인 동작입니까? (크롬을 사용하고 있습니다)

건배.

위, 나는 다음과 같이 STH 않는 물건을 지우려면 :

success: function() { 
     for(line in data){ 
      doing sth on line, and then append to myDiv 
     } 
     myDiv.height() 
     } 
+1

아마도 div는 높이를 확인할 때'display : none'을 가지고 있을까요? – lazyhammer

답변

0

데이터가 DIV에로드 될 때까지 기다린 다음 경고 만 수행해야합니다. 귀하의 전체 코드가 무엇인지 모르겠지만이 문제는 보이는 것입니다

0

jquery없이 직접 자바 스크립트로 높이를 시도하십시오. 나는 jquery height와 width 함수가 올바르지 않다는 것을 알고있다. 다음을 시도하십시오 :

myDiv.get(0).offsetHeight; 
관련 문제