一个简单的 Markdown 文档浏览器,支持通过 hash 跳转和渲染本地 Markdown 文件。
诞生原因是只需要非常简单地处理 Markdown,懒得找框架构建
- 支持渲染本地 Markdown 文件为 HTML
- 自动提取 Markdown 第一行作为页面标题
- 支持通过 URL hash 跳转不同文档
- 外部链接自动新标签页打开
- 提供返回首页按钮
- 仅需复制
index.html用于你的项目。
如用到复制代码,还需复制/img/copy-icon.svg。
- 将本项目放置于本地服务器目录下(如使用 VSCode Live Server、http-server 等)。
- 在项目根目录下放置你的 Markdown 文件(如
index.md, foo.md 等)。
- 访问
index.html,即可浏览和跳转 Markdown 文档。
- ~~若使用
CloudFlare Pages部署,由于找不到的页面自动返回 index,所以无法验证请求的 md 是否存在(示例),~~所以建议使用CloudFlare Worker的static assets方式部署
- 尝试粗略地解决
Pages部署自动返回 index 的问题(但依然建议用Worker):
|
if (testNotFoundFailbackToIndex) { |
|
const htmlIndicators = ['<!doctype html>', '<html', '<head', '<body']; |
|
const lowerMd = md.trim().toLowerCase(); |
|
if (htmlIndicators.some(ind => lowerMd.includes(ind))) { |
|
// 如果加载的内容是 HTML,说明服务端返回了 index 页面而不是 404 错误 |
|
throw new Error('Page is HTML, Markdown is Not Found'); |
|
} |
|
} |