最近在给自己做一个代码整理仓库,在列表页面中,采用了Ajax加载文章。
因为代码仓库的文章中有大量的代码演示,所以采用了经典的SyntaxHighlighter做代码高亮渲染。
在这里,我不得不承认SyntaxHighlighter是一款优秀的代码高亮插件。
按照官方给出的demo,代码高亮是能够正常渲染,但前提是页面内容已经加载完毕了以后。
也就是DEMO中的这句代码
SyntaxHighlighter.all();
但我苦逼了,因为列表页的文章内容是ajax加载的,代码此时没法正常渲染。
无奈之下,只有去翻查插件源代码,经过实验发现,在ajax将内容加载完毕以后,执行一次下面的代码,即可为新加载的代码演示进行高亮渲染。
SyntaxHighlighter.highlight();
这种做法我不知道是否受到官方推荐,但我目前测试了,能给正常使用,没有报错。