页面上加上这段脚本 控制 Image 控件缩放图片。
<script type="text/javascript">
function DrawImage(ImgD) {
var image = new Image();
var iwidth = 800;
var iheight = 600; //定义允许高度,当宽度大于这个值时等比例缩小
image.src = ImgD.src;
if (image.width > 0 && image.height > 0) {
flag = true;
if (image.width / image.height >= iwidth / iheight) {
if (image.width > iwidth) {
ImgD.width = iwidth;
ImgD.height = (image.height * iwidth) / image.width;
} else {
ImgD.width = image.width;
ImgD.height = image.height;
}
} else {
if (image.height > iheight) {
ImgD.height = iheight;
ImgD.width = (image.width * iheight) / image.height;
} else {
ImgD.width = image.width;
ImgD.height = image.height;
}
}
}
}
function test() {
var str = document.getElementById('isload').value;
if (str == "1") {
// AutoResizeImage(233, 208, document.getElementById('myimage'));
DrawImage(document.getElementById('image1'))
}
}
</script>
前台DIV
<div>
<input type="image" ID="image1" runat="server" />
<asp:HiddenField ID="isload" runat="server" Value="0" />
</div>
后台执行脚本
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
showImage();
}
}
private void showImage()
{
string script2 = "var ret= document.getElementById('image1');ret.src='" + Request.QueryString["imageURL"] + "?dt=" + DateTimeUtility.getSystemTime2(null) + "';";//加入随机数防止浏览器缓存 +Math.random() AutoResizeImage(250,250,ret);
executeScript(script2);
string script3 = "document.getElementById('isload').value='1';";
executeScript(script3);
script3 = "setTimeout(test, 100);";
executeScript(script3);
}