Nancy_959 2020-04-24 10:54 采纳率: 0%
浏览 2120

uni-app富文本解析出来的图文,图片需要做点击缩放功能,应该如何写?

这是富文本赋值解析地方

this.brief = graceRichText.format(res.data.list[this.now].brief)

这是页面

<rich-text :nodes="brief" class="vioce-brief"></rich-text>

我应该这么做处理呢?

  • 写回答

2条回答 默认 最新

  • Nancy_959 2021-02-04 11:58
    关注

    正则匹配img标签将所有img的src放入装入一个数组

    let imgs =[];
    nodes = nodes.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/gi, function (match, capture) {
    
    imgs.push(capture);
    
    return '';
    
    });
    
    this.imgs = imgs;

    思路是在文本渲染出来以后在给img添加click事件具体如下

    onLoa(){
    
        let arr =document.getElementsByTagName("img");//逼不得已操作dom元素
    
        console.log(arr);
    
              if(arr){
    
                    for (let i = 0; i < arr.length; i++) {
    
                        this.$nextTick(()=>{
    
                          arr[i].addEventListener("click", function(){
    
                            console.log(arr[i])
    
                            })
    
                            });
                     }
                }
    
    }
    
    

    图片预览操作

     chooseImg(e) {   //预览事件
            let src = e.currentTarget.dataset.src;
            console.log(src)
            let urls = [];
            urls = this.imgs;
            uni.previewImage({
                current: src, // 当前显示图片的http链接  
                urls: urls,
            })
            },

    就ok啦,最近有小伙伴私信我解决了没有,那我就发出来分享一哈,如果对你有帮助记得关注小心心点一点,谢谢啦~~

    评论

报告相同问题?

悬赏问题

  • ¥100 有偿寻云闪付SDK转URL技术
  • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
  • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
  • ¥15 远程安装一下vasp
  • ¥15 自己做的代码上传图片时,报错
  • ¥15 Lingo线性规划模型怎么搭建
  • ¥15 关于#python#的问题,请各位专家解答!区间型正向化
  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型