2013-01-23 2 views
0

페이지에 부모 컨테이너와 동일한 높이를 설정하고 싶은 이미지가 있습니다. 이 페이지 (예 : http://myrtlebeachgolfpackages.com/packages/)를 가져 가면 왼쪽의 주 이미지가 각각의 div의 높이 100 %를 채우고 싶습니다.jquery를 통해 여러 이미지의 높이를 설정합니까?

그래서 내 생각은 상위 컨테이너의 높이를 잡고 이미지의 높이를 그 부모 컨테이너와 동일하게 설정하는 것입니다.

$(".packagepic").height($('this').parent().parent().height()); 

레이아웃은 내가 parent().parent()을 잡고있는 이유이다 기본적으로

<div> 
    <a> 
     <image class="packagepic"> 
    </a> 
</div> 

입니다.

그러나 물론 이것이 작동하지 않는 것을 볼 수 있습니다. 또한 해당 div의 높이가 패키지에 따라 다르기 때문에 모든 div의 높이를 한 높이로 설정하거나 모든 이미지를 특정 높이로 설정할 수 없습니다.

이 문제에 대한 의견이 있으십니까? 가로 세로 비율을 유지하기 위해

답변

1

당신은 당신이 먼저 대답부터 내가 당신에게 상을주지 기능을 http://api.jquery.com/height/

$(".packagepic").height(function() { 
    return $(this).parent().parent().height(); 
}); 
+0

를 사용할 수 있습니다. :) 감사! 나는 그것이 기능을 할 필요가 있다고 생각하지 않았다. 오히려 이상하지만이 화재와 시간에는 그렇지 않습니다! (크롬에서 어쨌든.) 페이지를 20 번 새로 고치면 때때로 작동하는 것을 볼 수 있습니다. 때로는 그렇지 않습니다 ... 얼마나 이상합니까? – PaulHanak

+0

이상한 @PaulHanak ..하지만 함수'$ (this) '가없는 것은 현재 요소를 참조하지 않고 .. 원하는대로 작동하지 않습니다. 콜백 함수를 사용함으로써'this'는 각 특정 엘리먼트를 참조하므로 각 .packagepic의 높이는 함수에서 리턴하는 것에 의존 할 것이다. –

1
$(".packagepic").css('height', function() { 
    return $(this).parent().parent().height(); 
}); 

또한, auto에 폭을 설정할 수 있습니다.

관련 문제