博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序 - 富文本图片宽度自适应(正则)
阅读量:6502 次
发布时间:2019-06-24

本文共 1418 字,大约阅读时间需要 4 分钟。

引言:在微信小程序里,比如商品展示页面的商品详情会有图片展示,PC端设置的商品详情是PC端的宽度,所以在小程序里图片会显示不全,这时就应该做相应的处理,使小程序里图片显示正确

思路

把图片的宽度改为手机屏幕对应的宽度

微信小程序需要知道的知识

需要知道微信小程序里有自己的宽度标准,单位为rpx;

针对所有不同尺寸的浏览器,微信小程序里规定屏幕宽为750rpx;

解决

WXML

复制代码

WXS

data={artical:''}async onLoad(){    const json = await api.getDetail();    if(json !== null){        this.artical = util.formatRichText(json.detail.description);    }}复制代码

若artical里只有图片,并且图片没有设置style和宽度/高度

util.js

function formatRichText(html){    let newContent= html.replace(/\

若artical里包含多种标签

util.js

/** * 处理富文本里的图片宽度自适应 * 1.去掉img标签里的style、width、height属性 * 2.img标签添加style属性:max-width:100%;height:auto * 3.修改所有style里的width属性为max-width:100% * 4.去掉
标签 * @param html * @returns {void|string|*} */function formatRichText(html){ let newContent= html.replace(/
]*>/gi,function(match,capture){ match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, ''); match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, ''); match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, ''); return match; }); newContent = newContent.replace(/style="[^"]+"/gi,function(match,capture){ match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;'); return match; }); newContent = newContent.replace(/
]*\/>/gi, ''); newContent = newContent.replace(/\

转载地址:http://dfxyo.baihongyu.com/

你可能感兴趣的文章
如何构建开源库的自动编译
查看>>
<<编写可维护的javascript>> 笔记6(避免使用全局变量)
查看>>
RxJS:冷热模式的比较
查看>>
变量(译)
查看>>
Day15 - LocalStorage
查看>>
代码之髓读后感——关于学习
查看>>
你想要的——vuex源码分析
查看>>
【187天】黑马程序员27天视频学习笔记【Day15-中】
查看>>
Laravel 的异常处理和日志
查看>>
vuejs 内置组件component实现tab切换懒加载和表单输入框内容的清空
查看>>
使用HttpClient模拟并发请求 - 压力测试
查看>>
理解async
查看>>
leetcode67 binary add 二进制加法计算
查看>>
通过nginx实现跨域请求
查看>>
体验javascript之美第三课 对象、类型、操作符
查看>>
解决通过MediaMetadataRetriever获取音频文件时长不准确的问题
查看>>
在CentOS 7.3(1611)上安装Qt 5.8.0开发环境
查看>>
【iOS】Masonry和FDTemplateLayoutCell搭配使用「UITableview自适应内容高度」
查看>>
1.3.linux.传智.目录功能、命令汇总
查看>>
Kotlin使用率达35%,Java要退位了?
查看>>