Thinkphp5中引入Markdown编辑器的具体方法是什么
Admin 2022-10-27 群英技术资讯 1343 次浏览
这篇文章主要介绍“Thinkphp5中引入Markdown编辑器的具体方法是什么”,有一些人在Thinkphp5中引入Markdown编辑器的具体方法是什么的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。本文实例讲述了Thinkphp5框架中引入Markdown编辑器操作。分享给大家供大家参考,具体如下:
1.把下载的项目放在public目录下
2.页面中引入jquery.js,editormd.js,editormd.css
demo
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>markdown测试</title>
<link rel="stylesheet" href="/public/markdown/css/editormd.css" rel="external nofollow" />
<script src="__JS__/jquery.min.js"></script>
<script src="/public/markdown/editormd.js"></script>
</head>
<body>
<form action="{:url('test')}" enctype="multipart/form-data" method='post'>
<div id="content-editormd" class="form-group">
<textarea style="display:none;" class="form-control" id="content-editormd-markdown-doc" name="content-editormd-markdown-doc"></textarea>
</div>
<button>提交</button>
</form>
<script type="text/javascript">
$(function() {
editormd("content-editormd", {
placeholder : '编辑你的内容...',
width : "100%",
height : 1000,
syncScrolling : "single",
path : "/public/markdown/lib/",
watch : true,
previewTheme : "white",//预览
theme : 'white',//工具栏
saveHTMLToTextarea : true, // 保存HTML到Textarea
// 图片上传
imageUpload : true,
imageFormats: ["jpg","jpeg","gif","png","bmp","webp"],
imageUploadURL: "/api/Upload/markdownUpload",
toolbarIcons : function() { //自定义工具栏,后面有详细介绍
return editormd.toolbarModes['full']; // full, simple, mini
},
});
});
//上传
/*
{
success : 0 | 1, // 0 表示上传失败,1 表示上传成功
message : "提示的信息,上传成功或上传失败及错误信息等。",
url : "图片地址" // 上传成功时才返回
}
*/
</script>
</body>
</html>
上传图片
public function markdownUpload(){
$config = [
'size' => 2097152,
'ext' => 'jpg,gif,png,bmp'
];
$file = $this->request->file('editormd-image-file');
$upload_path = str_replace('\\', '/', ROOT_PATH . 'public/uploads');
$save_path = '/uploads/';
$info = $file->validate($config)->move($upload_path);
if ($info) {
$result = [
'success' => 1,
'message' => '上传成功',
'url' => str_replace('\\', '/', '/public/'.$save_path . $info->getSaveName())
];
} else {
$result = [
'success' => 0,
'message' => $file->getError(),
'url' => str_replace('\\', '/', '/public/'.$save_path . $info->getSaveName())
];
}
return json($result);
}
3.页面加载markdown格式内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>页面加载markdown格式内容</title>
<link href="/public/markdown/css/editormd.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" />
<script src="__JS__/jquery.min.js"></script>
<script src="/public/markdown/lib/marked.min.js"></script>
<script src="/public/markdown/lib/prettify.min.js"></script>
<script src="/public/markdown/lib/raphael.min.js"></script>
<script src="/public/markdown/lib/underscore.min.js"></script>
<script src="/public/markdown/lib/sequence-diagram.min.js"></script>
<script src="/public/markdown/lib/flowchart.min.js"></script>
<script src="/public/markdown/lib/jquery.flowchart.min.js"></script>
<script src="/public/markdown/editormd.js"></script>
</head>
<body>
<div id="doc-content">
<textarea style="display:none;">
```php
<?php
echo 1;
?>
```
</textarea>
</div>
<script type="text/javascript">
var testEditor;
$(function () {
testEditor = editormd.markdownToHTML("doc-content", {//注意:这里是上面div的id
htmlDecode: "style,script,iframe",
emoji: true,
taskList: true,
tocm: true,
tex: true, // 默认不解析
flowChart: true, // 默认不解析
sequenceDiagram: true, // 默认不解析
codeFold: true
});});
</script>
</body>
</html>
4.直接展示html格式的内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>前端显示</title>
<link href="/public/markdown/css/editormd.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" />
<script src="__JS__/jquery.min.js"></script>
<script src="/public/markdown/lib/marked.min.js"></script>
<script src="/public/markdown/lib/prettify.min.js"></script>
<script src="/public/markdown/editormd.min.js"></script>
</head>
<body>
<div id="doc-content">
{:htmlspecialchars_decode($data)}
</div>
<script type="text/javascript">
$(function () {
editormd.markdownToHTML("doc-content");
})
</script>
</body>
</html>
关于“Thinkphp5中引入Markdown编辑器的具体方法是什么”的内容今天就到这,感谢各位的阅读,大家可以动手实际看看,对大家加深理解更有帮助哦。如果想了解更多相关内容的文章,关注我们,群英网络小编每天都会为大家更新不同的知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要和大家分享几个php给图片加水印的几个自定义函数,文中的示例代码讲解详细,对我们学习PHP有一定帮助,需要的可以参考一下
下面由phpstorm教程栏目给大家介绍phpstorm 突然打开不了的解决方法,希望对需要的朋友有所帮助!今天早上,phpstorm突然打开不了了,明明上周使用的挺好的!没办法,只能重新安装了!
在laravel中,“laravel mix”是一款前端任务自动化管理工具,mix提供了简洁流畅的API,能够为Laravel应用定义Webpack编译任务,mix支持许多CSS与JavaScript预处理器,通过调用可以管理前端资源。
swoole扩展使用:1、安装:可以直接使用pecl install swoole命令安装。2、使用:创建一个server.php文件,在文件中通过Swoole编写相应代码,然后在终端运行这个文件即可使用Swoole实现相应作用。
分页效果在网页中是常见的,可是怎样才能实现分页呢?今天做了两种方法来实现一下分页的效果。首先,我们需要准备在数据库里面准备一个表,并且插入数据,这些都是必需的前提工作了。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008