用javascript实现图片等比例缩放


  1. js部分:

    <script type="text/javascript">

    $(window).load(function() {

      ImageAutoResize('div[id=demotu]');

      function ImageAutoResize(findstr)

      {

       var maxWidth = $(findstr).css("width").replace('px','');

       var maxHeight = $(findstr).css("height").replace('px','');

       $(findstr + ' img').each(function() {

       var ratio = 0;  // 缩放比例

       var width = $(this).width();    // 图片实际宽度

       var height = $(this).height();  // 图片实际高度

       // 检查图片是否超宽

       if(width > maxWidth){

        ratio = maxWidth / width;   // 计算缩放比例

        $(this).css("width", maxWidth + 'px'); // 设定实际显示宽度

        $(this).css("height", (height * ratio) + 'px');  // 设定等比例缩放后的高

       }

       var width = $(this).width();    // 图片实际宽度

       var height = $(this).height();  // 图片实际高度

       // 检查图片是否超高

       if(height > maxHeight){

        ratio = maxHeight / height; // 计算缩放比例

        $(this).css("height", maxHeight + 'px');   // 设定实际显示高度

        $(this).css("width", (width * ratio) + 'px');    // 设定等比例缩放后的高度

       }

       //调整位置

       var width = $(this).width();    // 图片实际宽度

       var height = $(this).height();  // 图片实际高度

       $(this).css("margin-left",(maxWidth - width) / 2 + 'px');

       $(this).css("margin-top",(maxHeight - height) / 2 + 'px');

       });

      }

     });

    </script>


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值