BorderJ's Blog

          --- java FreeBsd Web3D open-sources

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            8 隨筆 :: 1 文章 :: 40 評(píng)論 :: 0 Trackbacks
          通過js等比擴(kuò)大圖片的比例
          ?
          在做web開發(fā)的時(shí)候,顯示圖片是經(jīng)常用到。在默認(rèn)的情況下圖片是擴(kuò)充,但是有的時(shí)候顯示效果會(huì)不如人意。有時(shí)容器的大小是固定的,我們要把圖片等比擴(kuò)大。
          下面通過js來簡(jiǎn)單的實(shí)現(xiàn)圖片等比擴(kuò)大。
          ?
          var?imgObj?=?new?Image();?//?圖片對(duì)象
          imgObj.src?=?"d:\linuxborder.jpg"?;?????//?圖片地址

          imgwidth?=?imgObj.width;????//?圖片寬
          imgheight?=?imgObj.height;???//?圖片高
          ?
          document.all("myimg").width?=?imgwidth?*?rate;????????//改變圖片寬

          document.all("myimg").height?=?imgheight?*?rate;???????//改變圖片高

          ?
          ?“myimg”是<img name="myimg">中的name
          ?
          事例代碼:
          ?
          ?1?<html>
          ?2?<head>
          ?3?
          ?4?<meta?http-equiv="Content-Type"?content="text/html;?charset=GB2312">
          ?5?</head>
          ?6?<body?onload?=?changesize()>
          ?7?<center>?images:
          ?8?
          ?9????????<table?border="1"?width="445"?height="140"?bordercolor="#FF6600"?cellSpacing=0?cellPadding=0>
          10?
          11?????????<HR?style="border:1?dashed?green"?width="100%"?SIZE=4>
          12?????????<tr>
          13?
          14???????????<td>
          15?
          16?????????????<p?align="center">??????
          17?
          18???????????????<img?name="myimg"?src="d:\linuxborder.jpg"?width="440"?height="140"></p>
          19?
          20???????????</td>
          21?????????</tr>
          22?
          23???????</table>
          24?</center>
          25?</body>
          26?
          27?<script?language="javascript"?type="text/javascript">
          28?function?changesize(){
          29?????????var?imgwidth;
          30?????????var?imgheight;
          31?????????var?imgObj?=?new?Image();?//?圖片對(duì)象
          32?????????var?tempwidth;
          33?????????var?tempheight;
          34?
          35?????????var?rate;?????//?擴(kuò)大率
          36?????????
          37?
          38?????????imgObj.src?=?"d:\linuxborder.jpg"?;?//?圖片地址
          39?????????imgwidth?=?imgObj.width;???//?圖片寬
          40?????????imgheight?=?imgObj.height;??????//?圖片高
          41?????????
          42?????????tempwidth?=?440?-?imgwidth;
          43?????????tempheight?=?140?-?imgheight;
          44?????????if(tempwidth?<?tempheight)?{
          45?
          46??????????????rate?=?440?/?imgwidth?;?
          47?????????}?else?{
          48?
          49??????????????rate?=?140?/?imgheight;
          50?????????}
          51?????????
          52?
          53?????????document.all("myimg").width?=?imgwidth?*?rate;?????????????//改變圖片寬
          54?
          55?????????document.all("myimg").height?=?imgheight?*?rate;?????//改變圖片高
          56?}????
          57??
          58?</script>
          59?</html>
          60?

          ? BY: Border
          ?borderj#gmail.com
          http://www.aygfsteel.com/border
          posted on 2006-07-03 12:13 BorderJ 閱讀(2074) 評(píng)論(3)  編輯  收藏 所屬分類: Java

          評(píng)論

          # re: 通過js等比擴(kuò)大圖片的比例 2006-07-03 17:10 johnson duan
          好像不用這么復(fù)雜吧,在img的那里根據(jù)容器的大小要求,只設(shè)定weight或者h(yuǎn)eight就應(yīng)該可以得到這樣的效果了。  回復(fù)  更多評(píng)論
            

          # re: 通過js等比擴(kuò)大圖片的比例 2006-07-03 18:02 Border's Blog
          一般是按照你所說的進(jìn)行處理,img是拉伸到容器中的。
          但是在當(dāng)圖片過寬或過高時(shí),顯示的效果就會(huì)不好。
          現(xiàn)在我想要的效果是, 當(dāng) img的weight 達(dá)到容器的weight, 而height還可以再向外拉伸的時(shí)候, 就按照img和容器的weight來確定比例,是圖片來按照這個(gè)比例來擴(kuò)大或縮小。  回復(fù)  更多評(píng)論
            

          # re: 通過js等比擴(kuò)大圖片的比例 2007-01-02 13:08 文鯨
          啊   回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 衡东县| 沭阳县| 鲜城| 大竹县| 景谷| 绥宁县| 将乐县| 定边县| 马龙县| 桐梓县| 连云港市| 惠州市| 房山区| 顺平县| 团风县| 涞源县| 咸丰县| 东阳市| 北安市| 江达县| 平果县| 获嘉县| 襄汾县| 家居| 古丈县| 鸡泽县| 孟津县| 怀柔区| 沾化县| 承德市| 新民市| 宜都市| 东安县| 金塔县| 余姚市| 承德市| 甘德县| 双柏县| 惠来县| 新津县| 新河县|