中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在微信小程序中實現富文本圖片寬度自適應

發布時間:2021-05-22 16:03:20 來源:億速云 閱讀:371 作者:Leah 欄目:web開發

怎么在微信小程序中實現富文本圖片寬度自適應?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

思路

  • 把圖片的寬度改為手機屏幕對應的寬度

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

  • 需要知道微信小程序里有自己的寬度標準,單位為rpx;

  • 針對所有不同尺寸的瀏覽器,微信小程序里規定屏幕寬為750rpx;

解決

WXML

<view class='html_detail'>
  <rich-text nodes='{{artical}}'></rich-text>
</view>

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(/\<img/gi, '<img ');
  return newContent;
}

module.exports = {
  formatRichText
}

若artical里包含多種標簽

util.js

/**
 * 處理富文本里的圖片寬度自適應
 * 1.去掉img標簽里的style、width、height屬性
 * 2.img標簽添加style屬性:max-width:100%;height:auto
 * 3.修改所有style里的width屬性為max-width:100%
 * 4.去掉<br/>標簽
 * @param html
 * @returns {void|string|*}
 */
function formatRichText(html){
  let newContent= html.replace(/<img[^>]*>/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(/<br[^>]*\/>/gi, '');
  newContent = newContent.replace(/\<img/gi, '<img ');
  return newContent;
}

module.exports = {
  formatRichText
}

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柳州市| 加查县| 汉川市| 日照市| 海口市| 镇巴县| 枣阳市| 阳曲县| 合水县| 安义县| 巴南区| 桂东县| 临汾市| 大田县| 遂川县| 台江县| 五大连池市| 虞城县| 桐梓县| 衡水市| 铜山县| 徐州市| 临泉县| 瓮安县| 洛宁县| 蕲春县| 东乌珠穆沁旗| 永登县| 江阴市| 五莲县| 都昌县| 宿迁市| 兴城市| 淳化县| 莎车县| 台湾省| 开远市| 南京市| 原阳县| 方正县| 余姚市|