2012-05-18 2 views
0

이것이 작동하지 않는 이유를 모르겠다. div이 이미지 크기 이상이 되길 원하십니까?이미지 크기가 10xpx 이상이되도록

<script type="text/javascript"> 
    $(document).ready(function() { 
     $(function() { 
      var a = $('#img').clientWidth; 
      $('#viewimg').css('width', +a); 
      var b = $('#img').clientHeight; 
      $('#viewimg').css('height', +b); 
     }); 
    }); 
</script> 

당신은 그냥 같은 jQuery를 객체에 clientWidth을 사용할 수 없습니다

< div style="he""> 
     <div id="viewimg"> 
     <p>asdsa 
     </p> 
     <p>&nbsp;</p> 
     <p>&nbsp;</p> 
     <p>&nbsp;</p> 
     <p>&nbsp;</p> 
     </div> 
     <img id="img" src="https://www.google.com/intl/es_ALL/images/logos/images_logo_lg.gif" style= border:dotted 1px;"/> 
     <div class="t"> 
     </div> 
    </div> 
+0

당신은 왜 당신이 하시겠습니까 –

+0

변수에 +를 추가 #viewimg의 높이와 너비와 #img의 너비와 폭을 더하고 #viewimg의 높이와 너비에 할당하거나 단순히 #img의 높이와 너비를 #v의 높이와 너비에 할당합니다. 이미지 –

답변

2

설정 padding (왼쪽 상단 &) 또는 margin (왼쪽 &) 작업을 할 것입니다

$(document).ready(function() { 
     var extraSpace = 15;//pixels 
     var img = $("#img"); 
     var div = $("#viewimg"); 
     img.css('margin-left', extraSpace/2); 
     img.css('margin-top', extraSpace/2); 
     var a = img.width(); 
     var b = img.height(); 
     div.css('width', a+extraSpace); 
     div.css('height', b+extraSpace); 
});​ 

데모 : http://jsfiddle.net/dkr3A/3/

+1

Perfect, its working :) – Yahoo

0
var a= $('#img').width(); 
$('#viewimg').width(a+10) ; // $('#viewimg').css('width', a+10); 
1

HTML. 이 jsFiddle에서보세요 : http://jsfiddle.net/hewnR/1/

당신이 jQuery 오브젝트가 일치하는 DOM 요소에 액세스하려면, 당신은 .get()를 사용해야합니다. documentation을 살펴보세요. 그러나 .get(0).clientWidth 대신 jQuery의 메서드 .width()을 사용하면 더 쉬울 것입니다.

//This doesn't work: 
var a = $('#img').clientWidth; 

//But this does: 
var a = $('#img').get(0).clientWidth; 
//and does the same as this: 
var a = $('#img').width(); 

//Then, add 10px and change the width: 
$('#viewimg').width(10+a+'px'); 
+0

나는 이미지의 wigth (이미지로드 후 IMG 요소)를 얻고 싶었다. 이것은 IMG 요소가 아닌 DIV에만 해당됩니다 – Yahoo

관련 문제