10分钟让你的站点也支持Markdown

Markdown简介

Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。Markdown 的语法十分简单,常用的标记符号也不超过十个,这种相对于更为复杂的 HTML 标记语言来说,Markdown 可谓是十分轻量的,学习成本也不需要太多,且一旦熟悉这种语法规则,会有一劳永逸的效果。

Markdown优点

用markdown编写完后,我们可以导出到html发布到网站或者导出pdf保存到本地,十分的方便。最重要的是markdown源文件是纯文本文件,也就是意味着可以跨平台,使用 Markdown 的优点如下:

专注你的文字内容而不是排版样式,安心写作。
轻松的导出 HTML、PDF 和本身的 .md 文件。
纯文本内容,兼容所有的文本编辑器与字处理软件。
随时修改你的文章版本,不必像字处理软件生成若干文件版本导致混乱。
可读、直观、学习成本低。

Markdown语法教程

点这儿 ------ Markdown语法教程--图片版Markdown编辑器推荐与语法教程--展示版

我是分割线我是分割线我是分割线我是分割线我是分割线

如何让自己的站点也支持Markdown

上面介绍了Markdown的好处和使用教程,下面就是开始让自己的网站也支持该语言。
之所以markdown可以在网站中使用,是因为markdown可以导出html,我们要做的便是将markdown转换成html

showdown.js

第一步

我们先去下载开源js库showdown.js,这是现在比较流行的开源库,我们没有必要自己再去造轮子。

下载下来后是一个这样的一个文件夹:

showdown.jpg

里面包含:

showdown1.jpg

第二步

将这个文件夹拖入我们工程的public目录下(根据自己的情况去找对应的文件夹)

showdow3.jpg

第三步

我们需要在哪个页面使用markdown就在哪个界面引入showdown.min.js文件

showdown4.jpg

在head头中引入,一定要搞清楚准确的路径去找出showdown.min.js文件

showdown5.jpg

第四步

showdown.js的使用方法很简单

function compile(){

    //获取要转换的文字
    var text = document.getElementById("content").value;
    //创建实例
    var converter = new showdown.Converter();
    //进行转换
    var html = converter.makeHtml(text);
    //展示到对应的地方  result便是id名称
 document.getElementById("result").innerHTML = html;
}

如果想实现实时的转换,比如:简书的预览模式
可以参考下面的代码

<!DOCTYPE html>
<html>
<head>
    <title>Markdown.js</title>
    <script type="text/javascript" src="showdown-master/dist/showdown.min.js"></script>
</head>
<--我们可以使用样式自定义markdown转换后的样式--!>
<style>
<--引用样式--!>
    blockquote {
        border-left:#eee solid 5px;
        padding-left:20px;
    }
<--列表样式--!>
    ul li {
        line-height: 20px;
    }

<--代码样式--!>
    code {
        color:#D34B62;
        background: #F6F6F6;
    }
 }
</style>
<body>
<div>
    <--设置id为oriContent,如果想实现实时更新,使用onkeyup方法--!>

    <textarea id="oriContent" style="height:400px;600px;" onkeyup="convert()"></textarea>

<---设置展示的div添加id-!>
    <div id="result"></div>

</div>

<--写转化函数--!>
<script type="text/javascript">
function convert(){
    var text = document.getElementById("oriContent").value;
    var converter = new showdown.Converter();
    var html = converter.makeHtml(text);
    document.getElementById("result").innerHTML = html;
}
</script>
</body>
</html>

效果如下:
showdown6.jpg

如果不实现实时变换,把onkeyup去掉,然后直接获取到标记语言的文本,然后进行转换输出到对应的位置就可以了,大家自行尝试吧


整理by Demoer,欢迎关注我的个人公众号:zhyunfe-com,共同学习交流~

zhyunfe-com.jpg

原文地址:https://www.cnblogs.com/zhyunfe/p/6384152.html