富文本编辑器wangEditor

news/2024/7/10 1:40:49 标签: javascript, 前端, 开发语言, vue, react

非常好用的一款富文本编辑器

支持Vue2/3 React 效果图👇
在这里插入图片描述
官网地址 官网很详细 安装教程还有demo源码 在线demo 还有很多高级用法等等

在这里插入图片描述

也支持CND
一个html就能实现编辑器效果

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>wangEditor default mode</title>
    <link href="https://cdn.bootcdn.net/ajax/libs/normalize/8.0.1/normalize.min.css" rel="stylesheet">
    <link href="https://cdn.jsdelivr.net/npm/@wangeditor/editor@latest/dist/css/style.css" rel="stylesheet">
    <link href="https://unpkg.com/@wangeditor/editor@latest/dist/css/style.css" rel="stylesheet">
    <link href="./css/layout.css" rel="stylesheet">

    <script src="./js/custom-elem.js"></script>
</head>

<body>
    <demo-nav title="wangEditor default mode"></demo-nav>
    <div class="page-container">
        <div class="page-left">
            <demo-menu></demo-menu>
        </div>
        <div class="page-right">
            <!-- 编辑器 DOM -->
            <div style="border: 1px solid #ccc;">
                <div id="editor-toolbar" style="border-bottom: 1px solid #ccc;"></div>
                <div id="editor-text-area" style="height: 500px"></div>
            </div>

            <!-- 内容状态 -->
            <p style="background-color: #f1f1f1;">
                Text length: <span id="total-length"></span>;
                Selected text length: <span id="selected-length"></span></p>
        </div>
    </div>

    <!-- <script src="https://cdn.jsdelivr.net/npm/@wangeditor/editor@latest/dist/index.min.js"></script> -->
    <script src="https://unpkg.com/@wangeditor/editor@latest/dist/index.js"></script>
    <script>
        const E = window.wangEditor

        // 切换语言
        const LANG = location.href.indexOf('lang=en') > 0 ? 'en' : 'zh-CN'
        E.i18nChangeLanguage(LANG)

        window.editor = E.createEditor({
            selector: '#editor-text-area',
            html: '<p><br></p>',
            config: {
                placeholder: 'Type here...',
                MENU_CONF: {
                    uploadImage: {
                        fieldName: 'your-fileName',
                        base64LimitSize: 10 * 1024 * 1024 // 10M 以下插入 base64
                    }
                },
                onChange(editor) {
                    console.log(editor.getHtml())

                    // 选中文字
                    const selectionText = editor.getSelectionText()
                    document.getElementById('selected-length').innerHTML = selectionText.length
                    // 全部文字
                    const text = editor.getText().replace(/\n|\r/mg, '')
                    document.getElementById('total-length').innerHTML = text.length
                }
            }
        })

        window.toolbar = E.createToolbar({
            editor,
            selector: '#editor-toolbar',
            config: {}
        })
    </script>
</body>

</html>

http://www.niftyadmin.cn/n/5050342.html

相关文章

大型监控网络设备架构

IT监控架构的功效日益突出&#xff0c;已成为企业信息化建设不可或缺的一部分。本文将详细介绍IT监控架构的含义、构成、功能及其在公司中的应用。 IT监控架构的含义是什么&#xff1f; 简单来说&#xff0c;IT监控架构就是利用一系列技术和方法对公司的IT系统进行全方位的监控…

Django源码学习——配置文件解析

文章目录 global_settingssettings 同步发表在个人站点&#xff1a;https://panzhixiang.cn/2023/09/22/django-source-code-configuration/ 用Django好几年了&#xff0c;期间陆陆续续因为项目开发需要看过一点点源码&#xff0c;但是一直没有整体上看过源码&#xff0c;最近在…

测试驱动开发与极限编程思想浅析

随着全球经济的发展与计算机技术的普及&#xff0c;各行业对计算机软件的需要量日益增加。与此同时对软件的质量要求也越来越高。而与之形成鲜明对比的是&#xff0c;随着软件需要的增加和规模的增大&#xff0c;能做出及时交付给用户以及让用户满意的软件却变得难上加难。传统…

2023.9.23 关于 HTTP 详解

目录 HTTP 协议 认识 URL HTTP 请求 认识方法 HTTP 响应 认识状态码 总结 HTTP 请求的构造 Form 表单构造 AJAX 构造 Postman 构造 HTTP 协议 应用层使用最广泛的协议浏览器 基于 HTTP协议 获取网站是 浏览器 和 服务器 之间的交互桥梁HTTP协议 基于传输层的 TCP协…

C# 把m4a格式文件转为MP3格式

直接上代码&#xff1a; 先引用 using NAudio.Wave; using NAudio.Lame; 1, 文件列表来自于根目录里所有的m4a文件 string directloc "G:\mp3\MP3"; string[] fyles Directory.GetFiles(directloc); NAudio.Wave.BlockAlignReductionStream stream …

ZooKeeper、CuratorFramework、Watcher、ConnectionStateListener

ZooKeeper Zookeeper的作用是提供一个分布式的协调服务&#xff0c;它可以让分布式系统中的各个节点之间进行通信和协调&#xff0c;从而保证整个系统的一致性和可靠性。Zookeeper的核心是一个分布式的文件系统&#xff0c;它可以存储和管理分布式系统中的各种信息&#xff0c…

协议-TCP协议-基础概念03-Keep live保活机制-TCP RST-TCP连接

Keep live保活机制-TCP RST-TCP连接 参考来源&#xff1a; 《极客专栏-网络排查案例课》 Keep live保活机制 定时发送心跳探测包&#xff1b; 对于心跳回复包有超时限制&#xff1b; 要打开这个 TCP Keep-alive 特性&#xff0c;你需要使用 setsockopt() 系统调用&#xff0…

拼多多商品详情数据接口

拼多多商品详情接口的具体内容。获取拼多多商品详情&#xff0c;可以参考如下方式&#xff1a; item_get_app-根据ID取商品详情原数据接口包括&#xff1a;标题&#xff0c;价格&#xff0c;促销价&#xff0c;优惠券&#xff0c;库存&#xff0c;销量&#xff0c;详情图片&am…