分享 Highlight.js 常见的几个函数使用方法
highlight.js 作为 hljs
对象的方法提供一些函数。
highlight(name, value, ignore_illegals, continuation)
用指定语言高亮代码。
参数:
name
: 要高亮的语言名,或别名value
: 原始 HTML 字符串ignore_illegals
: 是否忽略非法字符continuation
: 是否继续未完成的解析
返回的对象的属性:
language
: 语言名,和参数传递的语言名一致relevance
: 整数值value
: 带有高亮标记显示的字符串(配合 css 即可实现着色)top
: 当前模式的堆顶部
highlightAuto(value, languageSubset)
自动高亮代码。
参数:
value
: 原始 HTML 字符串languageSubset
: 可选的语言名或别名列表用来限制检测的语言范围
返回的对象的属性:
language
: 检测的语言relevance
: 整数值value
: 带有高亮标记显示的字符串second_best
: 拥有相同结构的的对象,作为检测出的次优语言,可能缺失
fixMarkup(value)
对着色处理后的 HTML 代码进行后处理。目前包括替换缩进制表符和使用 <br>
标记代替换换行符。使用 configure
进行全局配置。
参数:
value
: 代码高亮标记显示的字符串
返回值:
- 处理后的字符串
highlightBlock(block)
对包含代码的 DOM 节点添加高亮标记。默认使用语言检测,但是你也可以在节点上添加 class 属性来指定语言。
参数:
block
: DOM 节点
configure(options)
接受一个对象,使用此对象的属性值取更新全局配置。其它的选项不会改变。
options
的可选属性:
tabReplace
: 用于在缩进中替换制表符的字符串。useBR
: 设置是否使用<br>
标记替代换行符,对没有被<pre>
标签包含的代码使用时非常有用。classPrefix
: 在生成的高亮标记的类名之前添加的字符串前缀,用于兼容样式表languages
: 语言名或别名列表用来限制检测的语言范围。
initHighlighting()
为页面中所有 <pre><code>..</code></pre>
块添加高亮标记。配合 styles 中的 css 使用即可实现着色。
initHighlightingOnLoad()
将高亮显示绑定到页面加载完成触发的事件上。
registerLanguage(name, language)
以指定的名称将新语言添加到库中。
参数:
name
: 一个用作注册的语言的名称的字符串language
: 一个返回描述语言定义对象的函数。函数将被传递给hljs
对象,以便能够使用在其中定义的公共正则表达式。
listLanguages()
返回语言名称列表。
getLanguage(name)
通过名称或别名查阅语言。
参数:
name
: 一个语言名称字符串或别名字符串
返回值:
- 返回一个语言对象,如果没找到则返回
undefined
。
- 返回一个语言对象,如果没找到则返回
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论