网站首页 > 技术文章 正文
今天给大家分享一款开源免费的浏览器端Markdown编辑器Vditor!
一、编辑器简介
Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。提供桌面版。支持Windows、Linux、MacOS、浏览器扩展、安卓、IOS版本。
官网:https://b3log.org/vditor/
GitHub:https://github.com/Vanessa219/vditor
桌面版下载:https://b3log.org/siyuan/download.html
二、功能特性
● 支持三种编辑模式:所见即所得(wysiwyg)、即时渲染(ir)、分屏预览(sv)
● 支持大纲、数学公式、脑图、图表、流程图、甘特图、时序图、五线谱、多媒体、语音阅读、标题锚点、代码高亮及复制、graphviz、PlantUML 渲染
● 内置安全过滤、导出、图片懒加载、任务列表、多平台预览、多主题切换、复制到微信公众号/知乎功能
● 实现 CommonMark 和 GFM 规范,可对 Markdown 进行格式化和语法树查看,并支持10+项配置
● 工具栏包含 36+ 项操作,除支持扩展外还可对每一项中的快捷键、提示、提示位置、图标、点击事件、类名、子工具栏进行自定义
● 表情/at/话题等自动补全扩展
● 可使用拖拽、剪切板粘贴上传,显示实时上传进度,支持 CORS 跨域上传
● 实时保存内容,防止意外丢失
● 录音支持,用户可直接发布语音
● 粘贴 HTML 自动转换为 Markdown,如粘贴中包含外链图片可通过指定接口上传到服务器
● 支持主窗口大小拖拽、字符计数
● 多主题支持,内置黑白绿三套主题
● 多语言支持,内置中、英、韩文本地化
● 支持主流浏览器,对移动端友好
三、编辑器模式初始化设定
2.1 所见即所得模式
即所得模式对不熟悉 Markdown 的用户较为友好,熟悉 Markdown 的话也可以无缝使用。
new Vditor('vditor', {
"height": 360,
"cache": {
"enable": false
},
"value": "## 所见即所得(WYSIWYG)\n所见即所得模式对不熟悉 Markdown 的用户较为友好,熟悉 Markdown 的话也可以无缝使用。 ",
"mode": "wysiwyg"
})
2.2 即时渲染模式
对熟悉 Typora 的用户应该不会感到陌生,理论上这是最优雅的 Markdown 编辑方式。
new Vditor('vditor', {
"height": 360,
"cache": {
"enable": false
},
"value": "## 即时渲染(IR)\n即时渲染模式对熟悉 Typora 的用户应该不会感到陌生,理论上这是最优雅的 Markdown 编辑方式。",
"mode": "ir"
})
2.3 分屏预览(SV)
该模式目前没有发现具体的使用场景。
new Vditor('vditor', {
"height": 360,
"cache": {
"enable": false
},
"value": "## 分屏预览(SV)\n传统的分屏预览模式适合大屏下的 Markdown 编辑。",
"mode": "sv",
"preview": {
"mode": "editor"
}
})
2.4 分屏预览模式
分屏预览(SV)\n传统的分屏预览模式适合大屏下的 Markdown 编辑
new Vditor('vditor', {
"height": 360,
"cache": {
"enable": false
},
"value": "## 分屏预览(SV)\n传统的分屏预览模式适合大屏下的 Markdown 编辑。",
"mode": "sv",
"preview": {
"mode": "both"
}
})
四、案例代码
直接采用最原始的html提供完整的示例代码,直接可以运行。
<html>
<head>
<title>vditor编辑器</title>
<link rel="stylesheet" href="https://unpkg.com/vditor/dist/index.css" />
<script src="https://unpkg.com/vditor/dist/index.min.js"></script>
</head>
<body>
<input type="button" onclick="getContent()" value="确定" />
<div id="content">
</div>
<script>
var vditor = null;
window.onload = function() {
vditor = new Vditor(document.getElementById('content'), {
cache: {
enable: false
},
"mode": "sv",
"preview": {
"mode": "both"
}
});
}
// 测试数据填充
function getContent() {
vditor.setValue("## 测试 \n ### 二级标题 ");
}
</script>
</body>
</html>
参考资料:https://b3log.org/vditor/
猜你喜欢
- 2025-06-18 「融职培训」Web前端学习 第4章 jQuery 2 jQuery常用方法
- 2024-10-04 「融职培训」Web前端学习 第3章 JavaScript基础教程3 表达式与运
- 2024-10-04 「融职培训」Web前端学习 第9章 教务管理系统开发5 前端代码讲解
- 2024-10-04 「融职教育」Web前端学习 第1章 概述
- 2024-10-04 2020年的前端趋势预测:JavaScript将继续盛行
- 2024-10-04 提高前端的增益 提高前端开发效率方法
你 发表评论:
欢迎- 532℃Oracle分析函数之Lag和Lead()使用
- 531℃几个Oracle空值处理函数 oracle处理null值的函数
- 529℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 519℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 514℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 505℃【数据统计分析】详解Oracle分组函数之CUBE
- 484℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 483℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端排序 (47)
- 前端密码加密 (47)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)