前言

最近再做个H5移动端社交类型项目的时候,里面有一块 类似朋友圈、qq空间展示的模块,开发的时候发现了一个问题,就是展示用户上传的图片,因为用户上传的图片 可能是相机拍的,可能是截图、可能是网上找的,但是这样会存在一个图片不规则的问题,因为我们是需要展示缩略图的,如果图片的尺寸不满足我们的要求,我们既不能 设置高宽为100%,因为这样可能会存在图片拉伸、挤压的情况;如下是我的解决方法。

不规则素材

效果图

主要代码

主要html

<!-- _1_2 图片显示数量为1-2张的样式   _3_9 图片显示数量为3-9张的样式 --><div class="img_body _3_9"><div class="img_ctx"><img src="imgs/test2.png" alt=""></div><div class="img_ctx"><img src="imgs/test_phone.png" alt=""></div><div class="img_ctx"><img src="imgs/test_phone.png" alt=""></div><div class="img_ctx"><img src="imgs/test2.png" alt=""></div><div class="img_ctx"><img src="imgs/test_phone.png" alt=""></div><div class="img_ctx"><img src="imgs/test_phone.png" alt=""></div><div class="clear"></div></div>

主要css

         .img_body .img_ctx {display: block;float: left;border-radius: 5px;box-shadow: 0px 2px 5px 0px rgba(6, 190, 188, 0.2);background-position: center center;}.img_body .img_ctx img{display: none;}.img_body._1_2 .img_ctx {width: 49%;margin-right: 2%;margin-top: 2%;}.img_body._1_2 .img_ctx:nth-child(2) {margin-right: 0;}.img_body._3_9 .img_ctx {width: 32.5%;margin-right: 1.25%;margin-top: 1.25%;}.img_body._3_9 .img_ctx:nth-child(3){margin-right: 0;}.img_body._3_9 .img_ctx:nth-child(6){margin-right: 0;}.img_body._3_9 .img_ctx:nth-child(9){margin-right: 0;}

主要js

     $(function(){//获取所有没处理的 img$.each($('.img_ctx img'),function(i,v){//获取包裹img的divvar $img_parent= $(v).parent();//设置这个div的高度$img_parent.height($img_parent.width());//设置背景图为 当前的img$img_parent.css({backgroundImage:'url('+$(v).attr('src')+')'}) //如果图片长宽一样 则设置宽度百分之百if($(v).width()==$(v).height()){$img_parent.css({backgroundSize:'100% 100%'}) }//如果宽大于高 高度100%if($(v).width()>$(v).height()){//缩略百分比后的宽度var _width=$(v).width()*($img_parent.width()/$(v).height());$img_parent.css({backgroundSize: _width +'px 100%'}) }else{//宽度 100%$img_parent.css({backgroundSize:'100%'}) }//处理完图片后 把 img删掉,代表这个img已经处理过了$(v).remove();}) })

h5移动端,类似qq空间、朋友圈不规则图片显示适配功能相关推荐

  1. 人人网,微博,QQ空间,朋友圈,常用API调用实现方法

    <div class="bdsharebuttonbox"> <span>分享至:</span><a href="#" ...

  2. 一百行代码实现微信朋友圈九宫格图片显示

    前言     很多时候我们都在刷微博或者微信朋友圈的时候都会看到很多图片,而这些图片的显示跟我们平时很多控件的显示方式都不一样,而且,当我们仔细去观察后就会发现,他加载的图片都是根据图片数量动态加载的 ...

  3. android 类似qq空间微博微信九宫格图片

    直接给代码吧: import android.content.Context; import android.content.res.TypedArray; import android.graphi ...

  4. 朋友圈(类似微信朋友圈)的显示

    我们都知道,朋友圈的图片显示基本是随机的(一张图片时一排显示一张,两张图片时一排显示两张,三张图片时显示三张,超过三张就换行显示),这在很多应用中都经常运用到.这是示例图片 以android stud ...

  5. 【Android 控件使用及源码解析】 GridView规则显示图片仿微信朋友圈发图片

    今天闲下来想用心写一点东西,发现没什么可写的,就写一下最近项目上用到的一些东西吧.最近项目要求上传多图并且多图显示,而且要规则的显示,就像微信朋友圈的图片显示一样. 想了一下用GridView再适合不 ...

  6. android类似QQ空间,微信朋友圈,微博主页源码

    2019独角兽企业重金招聘Python工程师标准>>> 类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件,自动根据图片的数量确定图片大小和控件大小,使用Adapter模式设 ...

  7. 类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件

    类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件,自动根据图片的数量确定图片大小和控件大小,使用Adapter模式设置图片,对外提供接口回调,使用接口加载图片,支持任意的图片加载框架,如 G ...

  8. 电脑朋友圈,可以用电脑刷朋友圈了(电脑端微信怎么刷朋友圈)

    今天在我用手机刷朋友圈时. 老板突然出现在我身后,生气地对我说: "怎么还在玩手机!你今天的选题确定了没?" 我支支吾吾地回答到:"额--还在找还在找." 我就 ...

  9. iOS 中给view设置圆角头像(类似qq空间头像)

    view有一个属性layer,通过设置cornerRadius来设置圆角的半径,view是正方形的才能保证通过调整圆角半径来形成圆形头像 [view.layer setCornerRadius:CGR ...

最新文章

  1. python调用shell命令-python调用shell命令小结
  2. Hama笔记:Unable to load native-hadoop library 和 Snappy native library not loaded 的解决
  3. bootstrap3 商品列表_Bootstrap3基础 list-inline 无序列表横向显示
  4. php兼容编码,PHP截取字符串编码(兼容utf-8和gb2312)
  5. jzoj4235-序列【斐波那契数列】
  6. linux network io,Linux network I/O
  7. loadrunner中变量转换成一个参数
  8. spring源码 第二个后置处理器方法的使用-推断构造函数
  9. 中缀表达式——表达式树
  10. 利用QGIS提取天地图矢量底图中的建筑模型边界线
  11. 一位H3CIE攻坚之旅
  12. java 实现三角函数边长计算完整代码
  13. CURL命令参数详解
  14. uniapp微信小程序实现连接低功耗蓝牙打印功能
  15. strcmp()函数详解
  16. android平板更新系统,终于跟上安卓!iPad Pro新功能曝光:系统升级方便了
  17. 测试工程师的未来发展方向在哪里?
  18. 实现一个函数,对给定的正整数N,打印从1到N的全部正整数
  19. JavaScript数据数据类型判断
  20. 90后汕头返种水稻 国稻种芯·中国水稻会:广东新农人田保姆

热门文章

  1. 赴一场时光之约 遇一场手作邂逅
  2. Vue知识点梳理(思维导图版)
  3. AttributeSet api分析
  4. 中企动力联袂天姿做“时尚泳装”的弄潮儿
  5. oracle存储过程rowcount用法,oracle中的sql%rowcount,sql%found、sql%notfound、sql%rowcount和sql%isopen...
  6. oracle create or replace directory 的用法
  7. Python 爬虫逆向破解案例实战 (三):凡科网逆向之闭包技巧
  8. 腾讯X5引擎部分手机设置cookie失败
  9. phpstorm 不能选择 php language level 问题
  10. A7600官方ROM_VIBEUI_V2.5_1537联通版使用体验