让SyntaxHighlighter插件在Ajax下也能正常高亮

让SyntaxHighlighter插件在Ajax下也能正常高亮

😂 这篇文章最后更新于1354天前,您需要注意相关的内容是否还可用。

最近在给自己做一个代码整理仓库,在列表页面中,采用了Ajax加载文章。

因为代码仓库的文章中有大量的代码演示,所以采用了经典的SyntaxHighlighter做代码高亮渲染。

在这里,我不得不承认SyntaxHighlighter是一款优秀的代码高亮插件。

sh.jpg

按照官方给出的demo,代码高亮是能够正常渲染,但前提是页面内容已经加载完毕了以后。

也就是DEMO中的这句代码

SyntaxHighlighter.all();

但我苦逼了,因为列表页的文章内容是ajax加载的,代码此时没法正常渲染。

无奈之下,只有去翻查插件源代码,经过实验发现,在ajax将内容加载完毕以后,执行一次下面的代码,即可为新加载的代码演示进行高亮渲染。

SyntaxHighlighter.highlight();

这种做法我不知道是否受到官方推荐,但我目前测试了,能给正常使用,没有报错。