效果

html 转 markdown

此处使用JS库showdown
使用也是十分的简单,只要在项目中包含dist/showdown.min.js,就可以了,更多详细信息可以看项目的wiki

<head>
    <meta charset="utf-8">
    <title>MarkDown</title>
    <script type="text/javascript" src="./html_to_markdown/dist/showdown.min.js"></script>
</head>
<script>
     var text = document.getElementById("content").value;
     var converter = new showdown.Converter();
     var html = converter.makeHtml(text);
</script>

通过如上的代码就可以将markdown格式的文本(放在 id=content 的标签中)转化为html格式的字符串。

/* 转化前 */
# 一级标题
## 二级标题
**加粗**

/* 转化后 */
<h1 id="">一级标题</h1>
<h2 id="-1">二级标题</h2>
<p><strong>加粗</strong></p>

需要注意的是,这个库默认是不开启table功能的,也就是说你按照表格语法写的markdown不会转化为html格式的,需要开启。
var converter = new showdown.Converter({tables: true});
更多详细的设定可以参考 wiki,我只目前需要这个功能别的没看~ 同时table的样式也需要css的渲染才能变得好看,后面介绍
可以利用css code属性为代码改变颜色和背景,但是想要真正的着色还是需要别的插件才行。


代码着色

这里需要用到另外一个js插件,highlight.
实际使用时可以直接在线在官网进行配置。lighlight配置和下载
下载好后直接在页面加入如下的代码就可以实现代码的着色了。

<script type="text/javascript" src="./highlight.pack.js"></script>
<script> hljs.initHighlightingOnLoad() </script>

表格渲染

另外一个插件paincupid-express-css-table-design-master
加入下面代码就可以使你的表格渲染的比较好看了。可以改变box-table-a这个样式属性,在原码的index.html中展示了他们不同的样子。

<script>
var a=document.getElementsByTagName('table');
for(var i in a)a[i].id="box-table-a";
</script>
<style type="text/css">
<!--@import url("./style.css");-->
</style>

注意代码中的路径要设置正确!