小程序rich-text組件如何改變內(nèi)部img圖片樣式的方法
一、起因
小程序中有一個(gè)頁面,很奇葩,是通過后端傳過來的整段HTML字符串展示內(nèi)容的,那么我們暫時(shí)叫這個(gè)頁面為content,傳過來之后,他里面的圖片樣式是不固定的,有的大,有的小,有的有style有的沒有,那我怎么能讓他統(tǒng)一展示成一樣的樣式呢?
二、辦法
思前想后,我覺得還是正則比較靠譜,把content里面所有的img標(biāo)簽篩選出來,把里面有style的、有width的、有height的、全部刪除掉,最后在統(tǒng)一加上我們想要的樣式,最終代碼如下:
<RichText nodes={content} />
下面是HTML字符串處理過程
let html = content
.replace(/<p([\s\w"=\/\.:;]+)((?:(style="[^"]+")))/ig, '<p')
.replace(/<p>/ig, '<p style="font-size: 15Px; line-height: 25Px;">')
.replace(/<img([\s\w"-=\/\.:;]+)((?:(height="[^"]+")))/ig, '<img$1')
.replace(/<img([\s\w"-=\/\.:;]+)((?:(width="[^"]+")))/ig, '<img$1')
.replace(/<img([\s\w"-=\/\.:;]+)((?:(style="[^"]+")))/ig, '<img$1')
.replace(/<img([\s\w"-=\/\.:;]+)((?:(alt="[^"]+")))/ig, '<img$1')
.replace(/<img([\s\w"-=\/\.:;]+)/ig, '<img$1 style="width: 100%; border-radius: 8Px;"');
最終實(shí)現(xiàn)了我們想要的樣式統(tǒng)一的效果啦~
三、總結(jié)
我有想過直接在less里面取到img,然后改變它的樣式,這種辦法在h5中是可行的,但是在小程序中不起作用!因?yàn)樵谛〕绦蛑袝?huì)是一整個(gè)rich-text標(biāo)簽,里面的內(nèi)容樣式無法修改。所以采用這種辦法啦~~能夠解決問題。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
如何利用原生JS實(shí)現(xiàn)觸摸滑動(dòng)監(jiān)聽事件
這篇文章主要給大家介紹了關(guān)于如何利用原生JS實(shí)現(xiàn)觸摸滑動(dòng)監(jiān)聽事件的相關(guān)資料,文中將實(shí)現(xiàn)的原理以及代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-06-06
JS計(jì)算兩個(gè)時(shí)間相差分鐘數(shù)的方法示例
這篇文章主要介紹了JS計(jì)算兩個(gè)時(shí)間相差分鐘數(shù)的方法,結(jié)合完整實(shí)例形式分析了javascript針對(duì)日期時(shí)間的轉(zhuǎn)換與計(jì)算相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
js實(shí)現(xiàn)移動(dòng)端微信頁面禁止字體放大
本文主要介紹了js實(shí)現(xiàn)移動(dòng)端微信頁面禁止字體放大的方法,具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-02-02
使用javascript函數(shù)編寫簡單銀行取錢存錢流程
本文通過實(shí)例代碼給大家講解了使用javascript函數(shù)編寫簡單銀行取錢存錢流程,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-05-05
原生js實(shí)現(xiàn)計(jì)算購物車總金額的示例
本文主要介紹了原生js實(shí)現(xiàn)計(jì)算購物車總金額的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
js Canvas實(shí)現(xiàn)圓形時(shí)鐘教程
這篇文章主要為大家詳細(xì)介紹了HTML5 Canvas實(shí)現(xiàn)圓形時(shí)鐘簡易教程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
JS控制表格實(shí)現(xiàn)一條光線流動(dòng)分割行的方法
這篇文章主要介紹了JS控制表格實(shí)現(xiàn)一條光線流動(dòng)分割行的方法,實(shí)例分析了javascript操作table表格元素的技巧,需要的朋友可以參考下2015-03-03

