luoyan35714 / LessOrMore

Jekyll theme.
http://www.hifreud.com/LessOrMore/
MIT License
181 stars 213 forks source link

导航栏不支持中文 #11

Closed juzq closed 7 years ago

juzq commented 7 years ago

模板很好用,但是有个问题,就是文章左侧的导航栏无法支持中文,如果是中文的段落标题,则无法进行展开,也无法根据文章位置将导航栏中的段落标题加粗

juzq commented 7 years ago

http://www.hifreud.com/2017/04/18/java-nio-05-selector/#使用方法 例如这篇博客的“使用方法”段落标题,在导航栏是点不开的

luoyan35714 commented 7 years ago

嗯,重现了这个BUG,不过时好时坏。正在解决中。

PopLau commented 7 years ago

感谢你!我刚刚接触GitHub,有幸使用了你的theme,非常简洁好看,经过两天的努力终于建成了自己的博客,谢谢你!

luoyan35714 commented 7 years ago

@lijixue 最近尝试了好多中选择,不过迫于本人前端能力有限,始终没有找出中文导航失效的解决办法。您看下能帮忙解决么?或者留待更有经验的人来帮忙解决。

luoyan35714 commented 7 years ago

@PopLau 不客气的,本主题基于MIT协议开源,欢迎使用,欢迎传播!

juzq commented 7 years ago

@luoyan35714 大致看了一下,应该是因为markdown一级二级标题生成的导航栏id是中文导致的,例如:

<li><a href="#简介是什么" id="markdown-toc-简介是什么">简介(是什么)</a></li>
<h1 id="简介是什么">简介(是什么)</h1>

这个id是markdown生成的,有啥办法可以处理成英文吗

luoyan35714 commented 7 years ago

嗯,原因是这个,Markdown生成导航的语句是* content {:toc}, 没找到相关的配置可以转换为英文字符。其实有一个办法是通过第三方的JS把所有的中文ID都统一转换为英文,但是考虑到效率问题,没有这么做。

juzq commented 7 years ago

@luoyan35714 搞定啦,github使用的是kramdown,而kramdown是支持指定header id的,只需要在header后加上{#id},官方说明:https://kramdown.gettalong.org/syntax.html#specifying-a-header-id

luoyan35714 commented 7 years ago

多谢!最近刚换了工作,可能维护不及时。将会在最近把LessOrMore项目中的Demo都加上ID~原先的就不加了,太多了,工作量太大。