JavaScript,等比例縮放圖片的函數,很好用。

來源:互聯網
上載者:User
 在Web上顯示圖片,通常都會有圖片顯示比例問題,如果不給<img />限制width和height,那麼如果圖片大了就會將整個頁面擠亂,圖片小了又會使圖片失真。
    我的需求如下:
        1、預先定義好圖片顯示的標準寬度和高度。
        2、如果圖片的大小超過了標準定義,那麼等比例壓縮圖片。
        3、如果圖片的大小等於標準定義,那麼按照標準寬度和高度顯示圖片。
        4、如果圖片的大小小於標準定義,那麼不對圖片進行任何壓縮處理。
    可能是我搜尋的關鍵字不對吧,在網上找了很長時間,才找到,感覺很好使。代碼如下<script language="JavaScript">
<!--
//圖片按比例縮放
var flag=false;
function DrawImage(ImgD,iwidth,iheight){
    //參數(圖片,允許的寬度,允許的高度)
    var image=new Image();
    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;
        }
        ImgD.alt=image.width+"×"+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;
        }
        ImgD.alt=image.width+"×"+image.height;
        }
    }

//-->
</script>
調用:<img src="images/toplogo.gif" onload="javascript:DrawImage(this,100,100)">
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.