Parse 富文本解析
用于解析和展示 HTML 富文本内容,支持图片、视频等多媒体内容。
代码示例
<template>
<zk-theme type="page" :padding="30" showBack navbarTitle="富文本解析">
<zk-parse :content="htmlContent"></zk-parse>
</zk-theme>
</template>
<script>
export default {
data() {
return {
htmlContent: `
<div style="padding: 15px;">
<h1 style="color: #007AFF;">这是一个标题</h1>
<p style="font-size: 16px;">这是一个段落,展示基本的文本内容。</p>
<div style="margin: 10px 0;">
<img src="https://www.zenkuai.com/attachment/demo/3.jpg" style="width: 100%; border-radius: 8px;" />
</div>
<ul>
<li>列表项 1</li>
<li>列表项 2</li>
<li>列表项 3</li>
</ul>
<p style="color: #666;">这是一个带有颜色的文本</p>
<a href="https://www.example.com">这是一个链接</a>
</div>
`
}
}
}
</script>
<style>
</style>
API
Props 属性
参数 |
说明 |
类型 |
默认值 |
container-style |
容器的样式 |
string |
'' |
content |
用于渲染的 HTML 字符串 |
string |
'' |
copy-link |
是否允许外部链接被点击时自动复制 |
boolean / string |
true |
domain |
主域名,用于拼接链接 |
string |
- |
lazy-load |
是否开启图片懒加载 |
boolean / string |
false |
loading-img |
图片加载过程中的占位图链接 |
string |
'' |
error-img |
图片加载失败时的占位图链接 |
string |
'' |
preview-img |
是否允许图片被点击时自动预览 |
boolean / string |
true |
scroll-table |
是否给表格添加横向滚动 |
boolean / string |
false |
selectable |
是否开启长按复制 |
boolean / string |
false |
set-title |
是否将 title 标签内容设置到页面标题 |
boolean / string |
true |
show-img-menu |
是否允许图片长按显示菜单 |
boolean / string |
true |
use-anchor |
是否使用锚点链接 |
boolean / number |
false |
Events 事件
事件名 |
说明 |
回调参数 |
load |
DOM 结构加载完毕时触发 |
- |
ready |
所有图片加载完毕时触发 |
{ width: number, height: number } |
imgtap |
图片被点击时触发 |
图片属性对象 |
linktap |
链接被点击时触发 |
链接属性对象 |
play |
音视频播放时触发 |
- |
error |
媒体加载出错时触发 |
{ source: string, attrs: object } |
Methods 方法
方法名 |
说明 |
参数 |
navigateTo |
锚点跳转 |
(id: string, offset?: number) |
getText |
获取文本内容 |
- |
getRect |
获取内容大小和位置 |
- |
pauseMedia |
暂停播放媒体 |
- |
setPlaybackRate |
设置媒体播放速率 |
(rate: number) |