微信小程序rich-text富文本用法实例分析


Posted in Javascript onMay 20, 2019

本文实例讲述了微信小程序rich-text富文本用法。分享给大家供大家参考,具体如下:

rich-text是一个新增的微信小程序插件,从基础库1.4.0开始,低版本需要做兼容处理

nodes属性可为Array和String类型,但推荐使用Array.由于String类型最终也会转为Array类型

nodes分为支持两种节点,分别为元素节点(type=node ,默认为元素节点)文本节点(type=text)

元素节点

name 标签名 String 支持部分受信任的HTML节点
attrs 属性 Object 支持部分受信任的属性,遵循Pascal命名法
children 子节点列表 Array 结构和nodes一致
<!-- rich-text.wxml -->
<rich-text nodes="{{nodes}}" bindtap="tap"></rich-text>
<!--{{nodes}}其中的变量名与data中名字相同-->
<!--支持默认事件tap、touchstart、touchmove、touchcancel、touchend和longtap-->
// rich-text.js
Page({
 data: {
 nodes: [{
 name: 'div',
 attrs: {
 class: 'div_class',
 style: 'width : 100px; height : 100px; color: red;'
 },
 children: [{
 type: 'text',
 text: 'Hello World!'
 }]
 }]
 },
 tap() {
 console.log('tap')
 }
})

如果页面中存在多个富文本,富文本中存在多个孩子,请看下例:

<!-- rich-text.wxml -->
<rich-text nodes="{{nodes}}"></rich-text>
<rich-text nodes="{{nodes1}}"></rich-text>
// rich-text.js
Page({
 data: {
 nodes: [{
 name: 'div',
 attrs: {
 class: 'div_class',
 style: 'width : 100px; height : 100px; color: red;'
 },
 children: [{
 type: 'text',
 text: 'Hello World!'
 }]
 }],
 nodes1: [{
 name: 'p',
 attrs: {
 class: 'p_class',
 style: 'text-align : center; color: green;'
 },
 children: [{
 type: 'text',
 text: '我是p标签!!!'
 },{
 name: "span",
 attrs: {
  style: "color:red",
  class: "span_class"
 },
 children: [{
  type: "text",
  text: '我是span标签,哈哈哈哈'
 }]
 }]
 }]
 },
})

文本节点

text 文本 String 支持entities
<!-- rich-text.wxml -->
<rich-text nodes="{{nodes}}"></rich-text>
// rich-text.js
Page({
 data: {
 nodes: "我是文本节点,意外不?"
 },
})

注意:

  • 全局支持class和style属性,不支持id属性。
  • nodes 不推荐使用 String 类型,性能会有所下降
  • rich-text 组件内屏蔽所有节点的事件。
  • name 属性大小写不敏感
  • 如果使用了不受信任的HTML节点,该节点及其所有子节点将会被移除,受信任的html节点请看官方文档
  • img 标签仅支持网络图片

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
jQuery插件 tabBox实现代码
Feb 09 Javascript
使用jquery插件实现图片延迟加载技术详细说明
Mar 12 Javascript
基于jQuery的弹出框插件
Mar 18 Javascript
jQuery中innerHeight()方法用法实例
Jan 19 Javascript
JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
Aug 02 Javascript
require.js+vue开发微信上传图片组件
Oct 27 Javascript
vue-router路由懒加载和权限控制详解
Dec 13 Javascript
vue页面切换到滚动页面显示顶部的实例
Mar 13 Javascript
Angular6 写一个简单的Select组件示例
Aug 20 Javascript
node.js 模块和其下载资源的镜像设置的方法
Sep 06 Javascript
JavaScript中的&quot;=、==、===&quot;区别讲解
Jan 22 Javascript
JS中队列和双端队列实现及应用详解
Sep 29 Javascript
bootstrap中的导航条实例代码详解
May 20 #Javascript
详解小程序云开发数据库
May 20 #Javascript
VUE脚手架具体使用方法
May 20 #Javascript
Vue CLI2升级至Vue CLI3的方法步骤
May 20 #Javascript
解决Vue+Electron下Vuex的Dispatch没有效果问题
May 20 #Javascript
微信小程序上传文件到阿里OSS教程
May 20 #Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
May 20 #Javascript
You might like
dede3.1分页文字采集过滤规则详说(图文教程)续四
2007/04/03 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
PHP多线程类及用法实例
2014/12/03 PHP
php+xml实现在线英文词典之添加词条的方法
2015/01/23 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
PHPStorm 2020.1 调试 Nodejs的多种方法详解
2020/09/17 NodeJs
js实现目录定位正文示例
2013/11/14 Javascript
JavaScript获取图片真实大小代码实例
2014/09/24 Javascript
JQuery中基础过滤选择器用法实例分析
2015/05/18 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
2016/06/30 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
2016/07/22 Javascript
js获取指定字符前/后的字符串简单实例
2016/10/27 Javascript
AngularJS学习第一篇 AngularJS基础知识
2017/02/13 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
vuejs事件中心管理组件间的通信详解
2017/08/09 Javascript
vue-cli3.0 特性解读
2018/04/22 Javascript
JS闭包原理与应用经典示例
2018/12/20 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
[01:11:35]Liquid vs LGD 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
OpenCV实现人脸识别
2017/04/07 Python
Python实现随机漫步功能
2018/07/09 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
对web.py设置favicon.ico的方法详解
2018/12/04 Python
PyTorch中的padding(边缘填充)操作方式
2020/01/03 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
伦敦最受欢迎的蛋糕店:Konditor & Cook
2019/11/01 全球购物
大一自我鉴定范文
2013/10/04 职场文书
学前教育毕业生自荐信范文
2013/12/24 职场文书
班干部演讲稿
2014/04/24 职场文书
医德考评自我评价
2014/09/14 职场文书
环卫工人慰问信
2015/02/15 职场文书
《你在为谁工作》心得体会(共8篇)
2016/01/20 职场文书
Python基础之tkinter图形化界面学习
2021/04/29 Python
python绘制云雨图raincloud plot
2022/08/05 Python