From 0b5e1c08ffa6aea6e587f67ecc653d3a714cc739 Mon Sep 17 00:00:00 2001 From: Felix Hao Date: Sun, 16 Aug 2015 09:12:34 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=A7=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E8=B6=85=E8=BF=87=E5=B1=8F=E5=B9=95=E9=AB=98=E5=AE=BD=E6=83=85?= =?UTF-8?q?=E5=86=B5=E7=9A=84=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 之前的代码只处理了超过宽度的情况,而且不是等比缩放,实际效果会使图片底部遮挡一节。 这部分改动为先判断宽度如果超过,处理缩放。如果处理之后高度还超过实际高度,就在按照高度缩放。 --- src/extend/layer.ext.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/extend/layer.ext.js b/src/extend/layer.ext.js index c72964c..804c5f5 100644 --- a/src/extend/layer.ext.js +++ b/src/extend/layer.ext.js @@ -211,9 +211,15 @@ layer.photos = function(options, loop, key){ area: function(){ var imgarea = [img.width, img.height]; var winarea = [$(window).width() - 100, $(window).height() - 100]; - if(!options.full && imgarea[0] > winarea[0]){ - imgarea[0] = winarea[0]; - imgarea[1] = imgarea[0]*winarea[1]/imgarea[0]; + if(!options.full){ + if(imgarea[0] > winarea[0]){ + imgarea[1] = imgarea[1] * winarea[0] / imgarea[0]; + imgarea[0] = winarea[0]; + } + if(imgarea[1] > winarea[1]){ + imgarea[0] = imgarea[0] * winarea[1] / imgarea[1]; + imgarea[1] = winarea[1]; + } } return [imgarea[0]+'px', imgarea[1]+'px']; }(),