js 网页图片按比例显示

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
    <script language="javascript" type="text/javascript">
    function ResizeImage(imageDest, W, H)
    {
        //显示框宽度W,高度H
        var image = new Image();
        image.src = imageDest.src;
        if(image.width>0 && image.height>0)
        {
        //比较纵横比
            if(image.width/image.height >= W/H)//相对显示框:宽>高
            {
                if(image.width > W) //宽度大于显示框宽度W,应压缩高度
                {
                    imageDest.width = W;
                    imageDest.height = (image.height*W)/image.width;  
                }
                else //宽度少于或等于显示框宽度W,图片完全显示
                {
                    imageDest.width = image.width;      
                    imageDest.height = image.height;  
                }
            }
            else//同理
            {
                if(image.height > H)
                {
                    imageDest.height = H;
                    imageDest.width = (image.width*H)/image.height;
                }
                else
                {
                    imageDest.width = image.width;
                    imageDest.height = image.height;
                }
            }
        }
    }

    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <img src="images/8.jpg" onload="ResizeImage(this,420,300)" />
    <img src="images/8.jpg" />
    </div>
    </form>
</body>
</html>

posted @   94cool  阅读(181)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
< 2009年6月 >
31 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 1 2 3 4
5 6 7 8 9 10 11
点击右上角即可分享
微信分享提示