先上代码: <asp:DataList ID="lit_pro" runat="server" RepeatColumns="3">
<ItemTemplate>
<li>
<div class="pic">
<img alt="" src="admin/product/<%#Eval("productPic") %>" onload="UploadImage(this)" />
</div>
</li>
</ItemTemplate>
</asp:DataList>
js代码: <script language="javascript" type="text/javascript"> function UploadImage(image) {
var fixedHeight = 198;
var fixedWidth = 198;
if (image.height > fixedHeight || image.width > fixedWidth) {
if (image.height * fixedWidth > image.width * fixedHeight) {
image.height = fixedHeight;
}
else {
image.width = fixedWidth;
var hei = ((200 - image.height) / 2);
image.style.cssText = "padding-top:" + hei + "px;";
}
}
} </script>
本地制作的时候没发现问题,上传到服务器上打开页面,完全乱套,达不到效果,很多图片都还是原始大小,可页面已经加载完毕了,有时刷新下会好但多数还是不行。刚学js,求帮忙优化或者给我个方法,我想实现上传到网站上的图片不会超过我定义的宽度和高度,没超过时候,居中在div里显示。
<ItemTemplate>
<li>
<div class="pic">
<img alt="" src="admin/product/<%#Eval("productPic") %>" onload="UploadImage(this)" />
</div>
</li>
</ItemTemplate>
</asp:DataList>
js代码: <script language="javascript" type="text/javascript"> function UploadImage(image) {
var fixedHeight = 198;
var fixedWidth = 198;
if (image.height > fixedHeight || image.width > fixedWidth) {
if (image.height * fixedWidth > image.width * fixedHeight) {
image.height = fixedHeight;
}
else {
image.width = fixedWidth;
var hei = ((200 - image.height) / 2);
image.style.cssText = "padding-top:" + hei + "px;";
}
}
} </script>
本地制作的时候没发现问题,上传到服务器上打开页面,完全乱套,达不到效果,很多图片都还是原始大小,可页面已经加载完毕了,有时刷新下会好但多数还是不行。刚学js,求帮忙优化或者给我个方法,我想实现上传到网站上的图片不会超过我定义的宽度和高度,没超过时候,居中在div里显示。
高度居中用js计算下就行了。
img.complete