hexo 链接到站内文章指定锚点

关于 hexo 如何跳转到站内文章的锚点链接,官网文档没任何描,本文总结如下几种方式:

hexo 标题与 id 关系

hexo markdown 文章里面如果使用 ## 文章二级标题 生成标题,标题会自动生成 id="文章二级标题"

如果标题中间有 半角空格 或者 全角空格 ,空格都会变成连字符。

如:一个半角空格 ## hello world 或 多个半角 ## hello world 或 多个全角空格 ## hello   world

其生成的 id 会变成 id="hello-world",多个空格会合并成一个连字符。

说完了生成的锚点 id ,再说说如何添加跳转到锚点。

当前文章锚点跳转

使用 markdown 内置的链接方式即可,其中如果有空格,需要把空格换成连字符 - ,如下:

1
[跳转到本文锚点](#hexo-标题与-id-关系)

示例:跳转到本文锚点

站内文章链接

官方有标签插件实现站内文章链接,如下:

post_link官方文档
1
{% post_link 'hexo blog' %}

示例:hexo blog 搭建

注意: 这儿优先使用文章 Front-matter 中的permalink字段,如果没有 permalink ,则使用 文件名字

站内其他文章锚点链接

上面的 post_link 方式链接站内文章好用,但是不支持文章的锚点链接,我们需要换一种方式。

官方文档还有一个 post_path ,用于获取文章路径,结合 markdown 内置的链接方式,即可实现锚点超链接,如下:

post_path官方文档
1
[hexo 安装]({% post_path 'hexo blog' %}#安装)

示例:hexo 安装

也可以使用 html a 标签实现,如下:

1
<a href="{% post_path 'hexo blog' %}#安装">hexo 安装</a>

示例:hexo 安装

注意:

  1. 如果文章中有图片,可能会出现锚点位置不准确问题,原因是图片加载成功之后会把内容高度撑开。
  1. 如果如果有空格,需要把空格换成连字符 -

站外文章锚点

直接使用全路径即可,如下:

1
[hexo 引用文章](https://hexo.io/zh-cn/docs/tag-plugins#%E5%BC%95%E7%94%A8%E6%96%87%E7%AB%A0)

示例:hexo 引用文章

本文由 linx(544819896@qq.com) 创作,采用 CC BY 4.0 CN协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。本文链接为: https://blog.jijian.link/2020-01-08/hexo-anchor-link/

如果您觉得文章不错,可以点击文章中的广告支持一下!