怎么在微信小程序中实现富文本图片宽度自适应

怎么在微信小程序中实现富文本图片宽度自适应?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

创新互联专注于溧阳企业网站建设,成都响应式网站建设公司,购物商城网站建设。溧阳网站建设公司,为溧阳等地区提供建站服务。全流程按需求定制网站,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

思路

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

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

  • 需要知道微信小程序里有自己的宽度标准,单位为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(/]+"/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(/]+"/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://ybzwz.com/article/gideoe.html