画像がロードされた後の画像の配置 (div コンテナーの中央に配置) に問題があります。私が使用している Javascript コードは PHP で動作しますが、Url.Action を使用しているためか、問題があります。動くイメージもあれば、とどまるイメージもあります。
foreach(GetFriendsItem hItem in (List<GetFriendsItem>)Model)
{
Html.RenderPartial("~/Views/Users/_UserProfile.cshtml", hItem );
}
/Views/Users/_UserProfile.cshtml
<img src="@Url.Action("Show", "Image", new { id = @Model.m_unUserID })" class="imageNarrowly image" />
JavaScript
$(function() {
$(".image").load(function(index, val){
// dimensions of the image
var imageWidth = $(this).width();
var imageHeight = $(this).height();
var parentHeight = $(this).parents($(this).parent).height();
var parentWidth = $(this).parents($(this).parent).width();
if (parentHeight > imageHeight){
topOffset = (parentHeight/2 - imageHeight/2);
$(this).css({'top': topOffset});
}
if (parentWidth > imageWidth){
leftOffset = (parentWidth/2 - imageWidth/2);
$(this).css({'left': leftOffset});
}
});
});