首页 > 代码库 > 图片对象加载相关

图片对象加载相关

今天一个前端朋友碰到一个问题,公司的一个相册需求,要求无论图片多大,在加载时都会按自身比例缩放,且在容器中居中。

研究了一下,使用image()对象来预加载图片,再根据图片的长宽比及容器的长宽比便可轻松解决这一问题。具体测试代码如下:

当然也可根据不一样的需求进行调整,使用预加载图片以后就可以轻松应对了。

<!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" xml:lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><title>Document</title><script type="text/javascript">function re(a,w,h){    var q = new Image();        q.src = a.src;    var e=q.width/q.height,f=w/h;    a.style.position = relative;    e>f ? (a.height=h,a.style.left=(w-a.width)/2 + ‘px‘) : (a.width=w,a.style.top=(h-a.height)/2 + px);}</script><style type="text/css">*{margin: 0;padding: 0;border: 0;overflow: hidden;}.div1{width: 200px;height: 220px;border: 1px solid #ccc;margin: 100px;}</style></head><body>    <div class="div1">        <img src="http://g.search1.alicdn.com/img/bao/uploaded/i4/i1/TB1NHH4FFXXXXcAXVXXXXXXXXXX_!!0-item_pic.jpg_220x220.jpg" alt="" onl oad="re(this,200,220)"  />    </div></body></html>

 

图片对象加载相关