首页 > 编程语言 >wangEditor增加源码模式,添加查看源码功能

wangEditor增加源码模式,添加查看源码功能

时间:2023-09-02 18:45:57浏览次数:45  
标签:菜单 const wangEditor source 源码 editor 添加

wangEditor是一款轻量级的富文本编辑器。使用还比较方便,但是缺少查看源码模式,需要我们自定义一个menu给增加查看源码模式

下面是wangEditor增加源码模式的代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>wangEditor增加源码模式</title>
</head>
<body>
    <div id="editor"></div>

    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/wangeditor@latest/dist/wangEditor.min.js"></script>
    <script type="text/javascript">
      const E = window.wangEditor;
      const editor = new E("#editor");
   
      let isHTML = false;

      const { BtnMenu } = E
      class htmlMenu extends BtnMenu {
        constructor(editor) {
          const $elem = E.$(
            `<div class="w-e-menu">
              <button>html</button>
            </div>`
          )
          super($elem, editor)
        }
        clickHandler() {
          let source = editor.txt.html();
          if(source){
            isHTML = !isHTML;
          }
          if(isHTML){
            source = source.replace(/</g, "<").replace(/>/g, ">").replace(/ /g, " ");
          }else{
            source = editor.txt.text().replace(/</ig, "<").replace(/>/ig, ">").replace(/ /ig, " ")
          }
          editor.txt.html(source);
          this.tryChangeActive();
          // console.log(source);
        }
        tryChangeActive() {
            if(isHTML){
                this.active()
            }else{
                this.unActive()
            }
        }
      }


    // 注册菜单
    const menuKey = 'htmlMenuKey' // 菜单 key ,各个菜单不能重复
    editor.menus.extend('htmlMenuKey', htmlMenu)

    // 将菜单加入到 editor.config.menus 中
    // 也可以通过配置 menus 调整菜单的顺序,参考【配置菜单】部分的文档
    editor.config.menus = editor.config.menus.concat(menuKey)

    editor.create()
    </script>
</body>
</html>
此代码亲测可用,直接复制使用即可

  

标签:菜单,const,wangEditor,source,源码,editor,添加
From: https://www.cnblogs.com/flzs/p/17674033.html

相关文章

  • 搭建高效的企业培训系统:源码解析与最佳实践
    在现代企业环境中,培训和发展员工的重要性变得越来越明显。为了保持竞争力,企业需要不断提升员工的技能和知识。搭建一个高效的企业培训系统可以帮助企业实现这一目标。一、什么是企业培训系统? 企业培训系统是一个涵盖广泛功能的复杂系统。它不仅要管理培训内容,还需要跟踪员工的进度......
  • 基于ASP的网上选课系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:网上选课系统的开发是为了更好的让各个高校充分的利用校园网的软硬件资源,通过B/S架构来实现网上选课系统,实现了网上选课系统的无纸化管理,让网上选课系统、查询课程更为方便,让导师审核选课更加快捷。意义:网上选课系统使学生足不出户就能够提交选课,有效的......
  • 忻州师院毕业论文管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:忻州师院毕业论文管理系统的开发是为了更好的让各个高校充分的利用校园网的软硬件资源,通过B/S架构来实现忻州师院毕业论文管理系统,管理毕业论文信息,老师可以在线查询毕业论文进程,节省时间,提高效率。意义:本文研发的忻州师院毕业论文管理系统结合高校具体的......
  • 基于ASP的人才招聘管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于ASP的人才招聘管理系统的开发是为了提高企业的工作效率,减少企业员工的工作量以及相应的时间,节省一些不必要的开支,从而让求职者可以更快的找到工作,企业快速的挖掘人才。人才招聘管理系统不仅能为经营者提供相对应的市场信息,并且能够随时掌握市场的发展......
  • 基于Android的红马国旅网上旅行社APP的设计与开发-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于Android的红马国旅网上旅行社APP是为了游客提供个性化的服务。用户注册登录APP后可根据自己的意向查询相关景点的攻略信息,还可将这些信息分享至微信、QQ、新浪微博等社交平台。合理规划自己的时间,出行前先做好攻略,查清楚景点的地理位置、营业时间、公......
  • 芦芽山旅游资源管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义: 本课题拟开发一个基于java的芦芽山旅游资源管理系统,开发的主要目标是通过芦芽山旅游资源管理系统,提供有用的信息数据,为旅游者提供可靠的旅游信息,对推动地方旅游业的发展具有积极有效的促进作用。本芦芽山旅游资源管理系统主要包括景点展示、酒店查看、在线......
  • 基于Android的组成原理在线课堂APP的设计与开发-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于Android的组成原理在线课堂APP是为了使教学管理工作系统化、规范化、自动化,从而达到提高课堂管理效率的目的。能够解决目前考勤管理效率、无法准确的统计出学生课程成绩等信息,而且系统开发价格便宜、后期维护成本极低。便于教师利用本系统更好的交流......
  • 使用OneDrive在博客中添加自己的音频
    原文链接:OneDrive的妙用图/音频/视频床-wuuconix'sblog  ......
  • 基于Android的校园共享单车租赁管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:校园共享单车租赁管理的设计与实现是以解决高校师生课余时间紧张的问题为目的的。在校内设置共享单车,大大减少了师生上课路途所用的时间,从而可以提高学生的学习效率。共享单车操作快捷、方便、经济,对于经济能力较低的大学生而言是一种绝佳的交通工具。相......
  • CLion进行远程/本地编译、GDB调试postgres(含阅读源码)
    Clion-RemoteGDB调试postgres(本地为windows,远程为centos)通过Make+Makefile编译,并构建索引下面一步一步跟着做即可下载源码压缩包、编译postgres的源码:使用Clion调试postgresql源码-知乎(zhihu.com)(系统用户的配置文件是~/.zshrc)下载源码压缩包、编译postgres的源码:Lin......