189 8069 5689

微信小程序wxParse插件显示视频问题

修改wxParse/html2json.js 文件 ,在 html2json(html, bindName) 方法里

目前创新互联公司已为上1000家的企业提供了网站建设、域名、网络空间、网站托管、服务器租用、企业网站设计、曲松网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

 var node = {
        node: 'element',
        tag: tag,
      };

这里使用 node.tag 能够获取标签类型,比如: img、embed、video

这里我的系统后台编辑器使用的是ckeditor 上传视频。生成的便签是:embed

所以加上判断:

  if (node.tag =="embed"){

     
      var embUrl = node.attr.src;
      if (node.attr.src.indexOf('http:')==-1){
       embUrl = "http://xxxx.com" + node.attr.src; 
      }
      node.attr.src = embUrl;
      node.tag='video';
     }

插件里只判断了video标签,识别不出来embed 标签,所有视频无法显示,加上判断,这样就可以了。

知识点扩展:微信小程序插件wxParse的使用

由于微信小程序不支持后台富文本编辑器编辑的html,需要使用wxParse 这个插件来解析,下面介绍一下这个插件的使用方法。

1.下载插件

在GigHub上面找到插件Demo,地址为 https://github.com/icindy/wxParse,把Demo里面的wxParse目录拷贝到项目里面.

2.在当前页面的JS里引入wxParse.js

var WxParse = require('../../wxParse/wxParse.js');
Page({
  data: {},
  onLoad: function() {
    var that = this;
    // 映射表情包
    WxParse.emojisInit('[]', "/wxParse/emojis/", {
      "00": "00.gif",
      "01": "01.gif",
      "02": "02.gif",
      "03": "03.gif",
      "04": "04.gif",
      "05": "05.gif",
      "06": "06.gif",
      "07": "07.gif",
      "08": "08.gif",
      "09": "09.gif",
      "09": "09.gif",
      "10": "10.gif",
      "11": "11.gif",
      "12": "12.gif",
      "13": "13.gif",
      "14": "14.gif",
      "15": "15.gif",
      "16": "16.gif",
      "17": "17.gif",
      "18": "18.gif",
      "19": "19.gif",
    });
    var article = `
从后端获取的HTML格式文件
`; WxParse.wxParse('article', 'html', article, that, 5); // WxParse.wxParse(bindName, type, data, target, imagePadding); // bindName绑定的数据名(必填) // type可以为html或者md(必填) // data为传入的具体数据(必填) // target为Page对象, 一般为this(必填) // imagePadding为当图片自适应是左右的单一padding(默认为0, 可选) } })

3.在全局app.wxss引入wxParse.wxss

@import "wxParse/wxParse.wxss";

4.在当前页面wxml中引入wxParse.wxml