editor.md中markdown编辑器的实现

markdown编辑器我觉得用起来非常的方便,故我就想实现一个简单的markdown编辑器

1、下载editor.md插件
git地址:https://github.com/pandao/editor.md.git
npm安装:npm install editor.md
官网:https://pandao.github.io/editor.md/
2、实现一个简单的markdown
注意事项:
1、注意css和js引用的路径,引用错误就不可以使用。
2、一定要先引用jquery,然后在引用editor.md的js代码,因为editor是依赖于jquery的。
3、editormd需要初始化。
<!--引入 editormd  css核心类-->
<link rel="stylesheet"  href="/markdown/css/editormd.min.css" />

<div id="markdown">
    <textarea style="display: none;" name="markdown-doc" id="markdown-doc"> ### Hello Editor.md !</textarea>
</div>
	<!--引入jq核心类-->	
	<script src="https://cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
	<!--引入 editormd js核心类-->	
    <script src="/markdown/editormd.min.js" ></script>
    <script>
    $(function() {
        var editor = editormd("markdown", {
            width  : "100%",
            height : "600px",
            placeholder : "请输入要发布的内容...",
            htmlDecode : true,
            htmlDecode : "style,script,iframe",
            path   : "/markdown/lib/",
            //黑色背景
            previewTheme : "dark",

        });
    });

</script>

页面展示

在这里插入图片描述

初始化的参数
<script>
            var testEditor;
            $(function() {
                    testEditor = editormd("test-editormd", {
                        width  : "100%",
            			height : "600px",
                        path : '../lib/',
                        placeholder : "请输入要发布的内容...",
			            htmlDecode : true,
			            htmlDecode : "style,script,iframe",
			            path   : "/markdown/lib/",
			            //黑色背景
			            previewTheme : "dark",
                        markdown : md,
                        codeFold : true,
                        //syncScrolling : false,
                        saveHTMLToTextarea : true,    // 保存 HTML 到 Textarea
                        searchReplace : true,
                        //watch : false,                // 关闭实时预览
                        //toolbar  : false,             //关闭工具栏
                        //previewCodeHighlight : false, // 关闭预览 HTML 的代码块高亮,默认开启
                        emoji : true,
                        taskList : true,
                        tocm            : true,         // Using [TOCM]
                        tex : true,                   // 开启科学公式TeX语言支持,默认关闭
                        flowChart : true,             // 开启流程图支持,默认关闭
                        sequenceDiagram : true,       // 开启时序/序列图支持,默认关闭,
                        //dialogLockScreen : false,   // 设置弹出层对话框不锁屏,全局通用,默认为true
                        //dialogShowMask : false,     // 设置弹出层对话框显示透明遮罩层,全局通用,默认为true
                        //dialogDraggable : false,    // 设置弹出层对话框不可拖动,全局通用,默认为true
                        //dialogMaskOpacity : 0.4,    // 设置透明遮罩层的透明度,全局通用,默认值为0.1
                        //dialogMaskBgColor : "#000", // 设置透明遮罩层的背景颜色,全局通用,默认为#fff
                        imageUpload : true,
                        imageFormats : ["jpg", "jpeg", "gif", "png", "bmp", "webp"],
                        imageUploadURL : "./php/upload.php",
                        onload : function() {
                            console.log('onload', this);
                            //this.fullscreen();
                            //this.unwatch();
                            //this.watch().fullscreen();
                            //this.setMarkdown("#PHP");
                            //this.width("100%");
                            //this.height(480);
                            //this.resize("100%", 640);
                        }
                });
           
                testEditor.gotoLine(90);//转到第90行
 
                testEditor.show();//显示编辑器
 
                testEditor.hide();//隐藏编辑器
 
                alert(testEditor.getMarkdown());//获取编辑器内容(不含html)
 
               alert(testEditor.getHTML());//获取编辑器html内容
           
               testEditor.watch();//开启双窗口对比
                          
               testEditor.unwatch();//取消双窗口对比
                     
               testEditor.previewing();//预览效果
              
               testEditor.fullscreen();//全屏(按ESC取消)
              
               testEditor.showToolbar();//显示工具栏
 
               testEditor.hideToolbar();//隐藏工具栏
           
               testEditor.config({
                        tocDropdown   : true,
                        tocTitle      : "目录 Table of Contents",
               });//TOC下拉菜单
               
              testEditor.config("tocDropdown", false);//TOC默认                           });
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要用Java开发一个Markdown编辑器,可以使用JavaFX图形化界面库来实现。而要集成Editor.md,可以在JavaFX嵌入WebView组件,然后加载Editor.md的HTML页面即可。 以下是实现步骤: 1. 在JavaFX创建一个WebView组件 ``` WebView webView = new WebView(); ``` 2. 通过WebView组件加载Editor.md的HTML页面 ``` String htmlContent = "<html><head><link rel=\"stylesheet\" href=\"https://pandao.github.io/editor.md/css/editormd.min.css\"/></head><body><textarea id=\"editor\"></textarea><script src=\"https://pandao.github.io/editor.md/lib/marked.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/prettify.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/raphael.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/underscore.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/sequence-diagram.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/flowchart.min.js\"></script><script src=\"https://pandao.github.io/editor.md/lib/jquery.min.js\"></script><script src=\"https://pandao.github.io/editor.md/editormd.min.js\"></script><script type=\"text/javascript\">var testEditor = editormd(\"editor\", {});</script></body></html>"; webView.getEngine().loadContent(htmlContent); ``` 3. 将WebView组件添加到JavaFX的场景 ``` Scene scene = new Scene(webView); stage.setScene(scene); stage.show(); ``` 这样就可以实现一个简单的Markdown编辑器,并集成了Editor.md的功能。当然,还需要实现一些逻辑来获取编辑器的内容并进行解析和保存等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值