您现在的位置是:首页 > 电脑技术查询 > web开发

完美控制aspx页面显示图片的大小,该如何解决

编辑:chaxungu时间:2022-10-02 23:17:41分类:web开发

完美控制aspx页面显示图片的大小
在一个aspx的页面上有一个图片.要求宽度大于365px时设置宽度为365px;小于365px时图片原尺寸显示.
我用了以下几种方法都不行
1:css样式\
HTML code<img id="imgPro" runat="server" class="imgInfo" />.imgInfo{ max-width:365px; width:expression(document.body.clientWidth>365?"365px":"auto"); overflow:hidden;}
2:CS代码控制调用脚本
C# codethis.imgPro.Attributes.Add("onload", "changeImg(this)");//有时可以控制,有时图片就原样显示,必须刷新几次才行
脚本:HTML code <script language="javascript" type="text/javascript">
<!--
function changeImg(mypic){
var xw=365;

var width = mypic.width;
var height = mypic.height;
var bili = width/height;

var A=width/xw;

if(A>1)
{
mypic.width=xw;
mypic.height=xw/bili;
}
}
//-->
</script>
3:C# codethis.imgPro.Attributes.Add("onload", "javascript:if (this.width>365) this.width=365;");
以上几种方法都不行.
求教,能完美控制的方法.


------解决方案--------------------
JScript codefunction ImgW(ImgID,Width){ var obj = document.getElementById(ImgID); if(obj != null) { var w = obj.width; var h = obj.height; if (w > Width){ obj.width = Width; obj.height = h*Width/w; } }};ImgW("aa" ,"365");
------解决方案--------------------
function ImgW(ImgID,Width){
var obj = document.getElementById(ImgID);
if(obj != null)
{
var w = obj.width;
var h = obj.height;

if (w > Width){
obj.width = Width;
obj.height = h*Width/w;
}
}
};
ImgW("aa" ,"365");

------解决方案--------------------
嘿嘿~~~1楼正解
不过如果考虑执行顺序,应该

JScript codefunction ImgW(ImgID,Width){ var obj = document.getElementById(ImgID); if(obj != null) { var w = obj.width; var h = obj.height; if (w > Width){ obj.width = Width; obj.height = h*Width/w; } }};window.onload=function(){ ImgW("aa" ,"365"); }