diff --git a/README.md b/README.md
index 3b1b5cd..15ffcb6 100644
--- a/README.md
+++ b/README.md
@@ -13,13 +13,13 @@ docsify 是一个动态生成文档网站的工具。不同于 GitBook、Hexo
## 特性
- 无需构建,写完文档直接发布
-- 容易使用并且轻量 (~19kB gzipped)
+- 容易使用并且轻量 (压缩后 ~21kB)
- 智能的全文搜索
- 提供多套主题
- 丰富的 API
- 支持 Emoji
-- 兼容 IE10+
-- 支持 SSR ([example](https://github.com/docsifyjs/docsify-ssr-demo))
+- 兼容 IE11
+- 支持服务端渲染 SSR ([示例](https://github.com/docsifyjs/docsify-ssr-demo))
## 例子
diff --git a/cdn.md b/cdn.md
index 5b98d68..e47a99d 100644
--- a/cdn.md
+++ b/cdn.md
@@ -1,45 +1,53 @@
# CDN
-推荐使用 [unpkg](//unpkg.com) —— 能及时获取到最新版。
+推荐使用 [jsDelivr](//cdn.jsdelivr.net),能及时获取到最新版。你也可以在[cdn.jsdelivr.net/npm/docsify/](cdn.jsdelivr.net/npm/docsify/)中浏览npm包的源代码。
## 获取最新版本
-根据 UNPKG 的规则,不指定特定版本号时将引入最新版。
+不指定特定版本号时将引入最新版。
```html
-
+
-
+
```
+也可以使用 [压缩版文件](#compressed-file).
+
## 获取指定版本
-如果担心频繁地版本更新又可能引入未知 Bug,我们也可以使用具体的版本。规则是 `//unpkg.com/docsify@VERSION/`
+如果担心频繁地版本更新又可能引入未知 Bug,我们也可以使用具体的版本。规则是 `//cdn.jsdelivr.net/npm/docsify@VERSION/`
```html
-
+
-
+
```
!> 指定 *VERSION* 为 `latest` 可以强制每次都请求最新版本。
## 压缩版
-CSS 的压缩文件位于 `/lib/themes/` 目录下
+CSS 的压缩文件位于 `/lib/themes/` 目录下,JS 的压缩文件是原有文件路径的基础上加 `.min` 后缀。
```html
-
+
+
+
+
+
```
-JS 的压缩文件是原有文件路径的基础上加 `.min`后缀
-
```html
-
+
+
+
+
+
```
## 其他 CDN
@@ -47,3 +55,4 @@ JS 的压缩文件是原有文件路径的基础上加 `.min`后缀
- http://www.bootcdn.cn/docsify (支持国内)
- https://cdn.jsdelivr.net/npm/docsify/ (国内外都支持)
- https://cdnjs.com/libraries/docsify
+
diff --git a/configuration.md b/configuration.md
index e199806..3aff8ae 100644
--- a/configuration.md
+++ b/configuration.md
@@ -7,8 +7,8 @@
window.$docsify = {
repo: 'docsifyjs/docsify',
maxLevel: 3,
- coverpage: true
- }
+ coverpage: true,
+ };
```
@@ -21,7 +21,7 @@ docsify 初始化的挂载元素,可以是一个 CSS 选择器,默认为 `#a
```js
window.$docsify = {
- el: '#app'
+ el: '#app',
};
```
@@ -36,7 +36,7 @@ window.$docsify = {
window.$docsify = {
repo: 'docsifyjs/docsify',
// or
- repo: 'https://github.com/docsifyjs/docsify/'
+ repo: 'https://github.com/docsifyjs/docsify/',
};
```
@@ -49,7 +49,7 @@ window.$docsify = {
```js
window.$docsify = {
- maxLevel: 4
+ maxLevel: 4,
};
```
@@ -66,7 +66,7 @@ window.$docsify = {
loadNavbar: true,
// 加载 nav.md
- loadNavbar: 'nav.md'
+ loadNavbar: 'nav.md',
};
```
@@ -83,7 +83,20 @@ window.$docsify = {
loadSidebar: true,
// 加载 summary.md
- loadSidebar: 'summary.md'
+ loadSidebar: 'summary.md',
+};
+```
+
+## hideSidebar
+
+- 类型 : `Boolean`
+- 默认值: `true`
+
+这个选项用来完全隐藏侧边栏,侧边栏的任何内容都不会被渲染。
+
+```js
+window.$docsify = {
+ hideSidebar: true,
};
```
@@ -96,7 +109,7 @@ window.$docsify = {
```js
window.$docsify = {
- subMaxLevel: 2
+ subMaxLevel: 2,
};
```
@@ -109,7 +122,7 @@ window.$docsify = {
```js
window.$docsify = {
- auto2top: true
+ auto2top: true,
};
```
@@ -127,7 +140,7 @@ window.$docsify = {
// 文档和仓库根目录下的 README.md 内容一致
homepage:
- 'https://raw.githubusercontent.com/docsifyjs/docsify/master/README.md'
+ 'https://raw.githubusercontent.com/docsifyjs/docsify/master/README.md',
};
```
@@ -144,9 +157,49 @@ window.$docsify = {
// 直接渲染其他域名的文档
basePath: 'https://docsify.js.org/',
- // 甚至直接渲染其他仓库 readme
+ // 甚至直接渲染其他仓库
basePath:
- 'https://raw.githubusercontent.com/ryanmcdermott/clean-code-javascript/master/'
+ 'https://raw.githubusercontent.com/ryanmcdermott/clean-code-javascript/master/',
+};
+```
+
+## relativePath
+
+- 类型: `Boolean`
+- 默认值: `false`
+
+如果该选项设为 **true** ,那么链接会使用相对路径。
+
+例如,像这样的目录结构:
+
+```text
+.
+└── docs
+ ├── README.md
+ ├── guide.md
+ └── zh-cn
+ ├── README.md
+ ├── guide.md
+ └── config
+ └── example.md
+```
+
+如果 **启用** 了相对路径,当前链接是 `http://domain.com/zh-cn/README` ,对应的链接会解析为:
+
+```text
+guide.md => http://domain.com/zh-cn/guide
+config/example.md => http://domain.com/zh-cn/config/example
+../README.md => http://domain.com/README
+/README.md => http://domain.com/README
+```
+
+```js
+window.$docsify = {
+ // 启用相对路径
+ relativePath: true,
+
+ // 禁用相对路径(默认值)
+ relativePath: false,
};
```
@@ -164,14 +217,14 @@ window.$docsify = {
// 自定义文件名
coverpage: 'cover.md',
- // mutiple covers
+ // 多个封面页
coverpage: ['/', '/zh-cn/'],
- // mutiple covers and custom file name
+ // 多个封面页,并指定文件名
coverpage: {
'/': 'cover.md',
- '/zh-cn/': 'cover.md'
- }
+ '/zh-cn/': 'cover.md',
+ },
};
```
@@ -183,7 +236,7 @@ window.$docsify = {
```js
window.$docsify = {
- logo: '/_media/icon.svg'
+ logo: '/_media/icon.svg',
};
```
@@ -195,7 +248,15 @@ window.$docsify = {
```js
window.$docsify = {
- name: 'docsify'
+ name: 'docsify',
+};
+```
+
+name 项也可以包含自定义 HTML 代码来方便地定制。
+
+```js
+window.$docsify = {
+ name: 'docsify',
};
```
@@ -213,8 +274,8 @@ window.$docsify = {
// 按照路由切换
nameLink: {
'/zh-cn/': '/zh-cn/',
- '/': '/'
- }
+ '/': '/',
+ },
};
```
@@ -232,15 +293,15 @@ window.$docsify = {
renderer: {
link: function() {
// ...
- }
- }
+ },
+ },
},
// function
markdown: function(marked, renderer) {
// ...
return marked;
- }
+ },
};
```
@@ -269,8 +330,8 @@ window.$docsify = {
'/zh-cn/changelog': '/changelog',
'/changelog':
'https://raw.githubusercontent.com/docsifyjs/docsify/master/CHANGELOG',
- '/.*/_sidebar.md': '/_sidebar.md' // See #301
- }
+ '/.*/_sidebar.md': '/_sidebar.md', // See #301
+ },
};
```
@@ -283,7 +344,7 @@ window.$docsify = {
```js
window.$docsify = {
loadSidebar: true,
- autoHeader: true
+ autoHeader: true,
};
```
@@ -295,7 +356,7 @@ window.$docsify = {
```js
window.$docsify = {
- executeScript: true
+ executeScript: true,
};
```
@@ -317,10 +378,12 @@ window.$docsify = {
```js
window.$docsify = {
- noEmoji: true
+ noEmoji: true,
};
```
+?> 如果该选项设为 `false` ,但是你不想解析一些特别的表情符,[参考这里](https://github.com/docsifyjs/docsify/issues/742#issuecomment-586313143)
+
## mergeNavbar
- 类型: `Boolean`
@@ -329,7 +392,7 @@ window.$docsify = {
```js
window.$docsify = {
- mergeNavbar: true
+ mergeNavbar: true,
};
```
@@ -337,7 +400,7 @@ window.$docsify = {
- 类型: `String|Function`
-我们可以通过 **{docsify-updated}** 变量显示文档更新日期. 并且通过 `formatUpdated`配置日期格式。参考 https://github.com/lukeed/tinydate#patterns
+我们可以通过 **{docsify-updated}** 变量显示文档更新日期. 并且通过 `formatUpdated`配置日期格式。参考 [https://github.com/lukeed/tinydate#patterns](https://github.com/lukeed/tinydate#patterns)
```js
window.$docsify = {
@@ -347,7 +410,7 @@ window.$docsify = {
// ...
return time;
- }
+ },
};
```
@@ -356,11 +419,37 @@ window.$docsify = {
- 类型: `String`
- 默认: `_blank`
-当前默认为 \_blank, 配置一下就可以:
+外部链接的打开方式。默认为 `_blank` (在新窗口或者标签页中打开)
```js
window.$docsify = {
- externalLinkTarget: '_self' // default: '_blank'
+ externalLinkTarget: '_self', // default: '_blank'
+};
+```
+
+## cornerExternalLinkTarget
+
+- 类型:`String`
+- 默认值:`_blank`
+
+右上角链接的打开方式。默认为 `_blank` (在新窗口或者标签页中打开)
+
+```js
+window.$docsify = {
+ cornerExternalLinkTarget: '_self', // default: '_blank'
+};
+```
+
+## externalLinkRel
+
+- 类型: `String`
+- 默认值: `noopener`
+
+默认为 `noopener` (no opener) 可以防止新打开的外部页面(当 [externalLinkTarget](#externallinktarget) 设为 `_blank` 时)能够控制我们的页面,没有设为 `_blank` 的话就不需要设置这个选项了。
+
+```js
+window.$docsify = {
+ externalLinkRel: '', // default: 'noopener'
};
```
@@ -371,7 +460,7 @@ window.$docsify = {
```js
window.$docsify = {
- routerMode: 'history' // default: 'hash'
+ routerMode: 'history', // default: 'hash'
};
```
@@ -383,7 +472,19 @@ window.$docsify = {
```js
window.$docsify = {
- noCompileLinks: ['/foo', '/bar/.*']
+ noCompileLinks: ['/foo', '/bar/.*'],
+};
+```
+
+## onlyCover
+
+- 类型: `Boolean`
+
+只在访问主页时加载封面。
+
+```js
+window.$docsify = {
+ onlyCover: false,
};
```
@@ -396,8 +497,18 @@ window.$docsify = {
```js
window.$docsify = {
requestHeaders: {
- 'x-token': 'xxx'
- }
+ 'x-token': 'xxx',
+ },
+};
+```
+
+例如设置缓存
+
+```js
+window.$docsify = {
+ requestHeaders: {
+ 'cache-control': 'max-age=600',
+ },
};
```
@@ -409,7 +520,7 @@ window.$docsify = {
```js
window.$docsify = {
- ext: '.md'
+ ext: '.md',
};
```
@@ -427,7 +538,7 @@ Example:
```js
window.$docsify = {
- fallbackLanguages: ['fr', 'de']
+ fallbackLanguages: ['fr', 'de'],
};
```
@@ -439,7 +550,7 @@ window.$docsify = {
```js
window.$docsify = {
- notFoundPage: true
+ notFoundPage: true,
};
```
@@ -447,7 +558,7 @@ window.$docsify = {
```js
window.$docsify = {
- notFoundPage: 'my404.md'
+ notFoundPage: 'my404.md',
};
```
@@ -457,9 +568,22 @@ window.$docsify = {
window.$docsify = {
notFoundPage: {
'/': '_404.md',
- '/de': 'de/_404.md'
- }
+ '/de': 'de/_404.md',
+ },
};
```
> 注意: 配置过`fallbackLanguages`这个选项的页面与这个选项`notFoundPage`冲突。
+
+## topMargin
+
+- 类型: `Number`
+- 默认值: `0`
+
+让你的内容页在滚动到指定的锚点时,距离页面顶部有一定空间。当你使用 `固定页头` 布局时这个选项很有用,可以让你的锚点对齐标题栏。
+
+```js
+window.$docsify = {
+ topMargin: 90, // default: 0
+};
+```
diff --git a/cover.md b/cover.md
index 1138865..cf4927a 100644
--- a/cover.md
+++ b/cover.md
@@ -9,29 +9,31 @@
_index.html_
```html
+
+
-
+
```
-`_coverpage.md`
-
```markdown
+
+

-# docsify
+# docsify 3.5
-> A magical documentation site generator.
+> 一个神奇的文档网站生成器。
-* Simple and lightweight (~12kb gzipped)
-* Multiple themes
-* Not build static html files
+- 简单、轻便 (压缩后 ~21kB)
+- 无需生成 html 文件
+- 众多主题
[GitHub](https://github.com/docsifyjs/docsify/)
-[Get Started](#quick-start)
+[Get Started](#docsify)
```
## 自定义背景
@@ -41,7 +43,9 @@ _index.html_
`_coverpage.md`
```markdown
-# docsify
+
+
+# docsify 3.5
[GitHub](https://github.com/docsifyjs/docsify/)
[Get Started](#quick-start)
diff --git a/custom-navbar.md b/custom-navbar.md
index 04f67c6..44cef8e 100644
--- a/custom-navbar.md
+++ b/custom-navbar.md
@@ -1,10 +1,13 @@
# 自定义导航栏
-我们可以直接在 HTML 里定义导航栏,要注意链接要以 `#/` 开头。
+## HTML
+如果你需要定制导航栏,可以用 HTML 创建一个导航栏。
-_index.html_
+!> 注意:文档的链接都要以 `#/` 开头。
```html
+
+