微信小程序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优化效率 提升性能解决方案
Sep 06 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
Aug 09 Javascript
js快速排序的实现代码
Dec 08 Javascript
javascript获取form里的表单元素的示例代码
Feb 14 Javascript
jQuery中filter()方法用法实例
Jan 06 Javascript
深入理解JavaScript系列(37):设计模式之享元模式详解
Mar 04 Javascript
jquery SweetAlert插件实现响应式提示框
Aug 18 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
JQuery导航菜单选择特效
Apr 11 Javascript
详解keep-alive + vuex 让缓存的页面灵活起来
Apr 19 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
Jun 06 Javascript
flexible.js实现移动端rem适配方案
Apr 07 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
PHP file_exists问题杂谈
2012/05/07 PHP
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
新浪SAE搭建PHP项目教程
2015/01/28 PHP
PHP的APC模块实现上传进度条
2015/10/27 PHP
类似CSDN图片切换效果脚本
2009/09/17 Javascript
jQuery 点击图片跳转上一张或下一张功能的实现代码
2010/03/12 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
JS常用倒计时代码实例总结
2017/02/07 Javascript
基于JavaScript实现选项卡效果
2017/07/21 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
jQuery+SpringMVC中的复选框选择与传值实例
2018/01/08 jQuery
JavaScript callback回调函数用法实例分析
2018/05/08 Javascript
详解node.js的http模块实例演示
2018/07/12 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
2018/10/12 Javascript
关于Vue Router中路由守卫的应用及在全局导航守卫中检查元字段的方法
2018/12/09 Javascript
nodejs对mongodb数据库的增加修删该查实例代码
2020/01/05 NodeJs
[03:17]史诗级大片应援2018DOTA2国际邀请赛 致敬每一位坚守遗迹的勇士
2018/07/20 DOTA
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
python实现简单的socket server实例
2015/04/29 Python
理解Python垃圾回收机制
2016/02/12 Python
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
详解Python正则表达式re模块
2019/03/19 Python
python+selenium实现简历自动刷新的示例代码
2019/05/20 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
举例讲解Python装饰器
2020/12/24 Python
深入剖析webstorage[html5的本地数据处理]
2016/07/11 HTML / CSS
html2canvas生成的图片偏移不完整的解决方法
2020/05/19 HTML / CSS
美国糖果店:Sugarfina
2019/02/21 全球购物
运动会广播稿500字
2014/01/28 职场文书
公司端午节活动方案
2014/02/04 职场文书
销售内勤岗位职责
2014/04/15 职场文书
青年标兵事迹材料
2014/08/16 职场文书
2016干部作风整顿心得体会
2016/01/22 职场文书
GoLang中生成UUID唯一标识的实现
2021/05/08 Golang
mysql查看表结构的三种方法总结
2022/07/07 MySQL