好插件,强烈推荐!
今天在用到SyntaxHighlighter的时候,觉得里面有那么多JS刷子,作者肯定会考虑到js选择性加载的问题。
于是到作者的主页http://alexgorbatchev.com/SyntaxHighlighter/看了一下,果然发现了:
这是第三版新加的功能,作者的原话是:
“SyntaxHighlighter comes with almost 30 brushes out of the box. One of the most requested feature has been the ability to dynamically load them without having to load them all on the same page.
Version 3 addresses this problem with with the new autoloader script. Setting autoloader up is as simple as addingshAutoloader.js file to your page and telling autoloader where your brushes are.”
我写了个demo来测试SyntaxHighlighter.autoloader这个功能,发现不起作用。
Google一下,找到这篇文章:《SyntaxHighlighter.autoloader没反应解决》
以下修改自作者原话:
SyntaxHighlighter.autoloader()应该在doc都载入完以后再执行。
如果引用了jQuery,可以放$(document).ready()里,这样的话放在header里也没问题。
但如果原生js,要不放body的onload里,要不放页面最后,比如在</body>、</html>随便找个地方放,就能看到效果了。
原来如此,把js代码放到</body>前,问题顺利解决。
准备Ctrl+W关闭搜索页面的时候,眼角瞄到另一个搜索结果:
进去看了一眼就被吸引住了。
作者考虑得很全面,参考了好几个人的作品,写出的这个插件也近乎完美。
主要特性:
- 采用最新版 SyntaxHighlighter 3.0.83 作为核心代码
- 语法js文件动态加载,只加载页面中需要的
- 选择代码段时不会选中行号
- 自动换行,行号自动对齐
- 日志编辑器中增加插入代码的按钮
- 内置8种风格css
本插件支持几乎所有主流的程序语言。
本插件在IE[6-8]、FireFox3、Chrome5下测试通过。
插件界面:


OMS驱动程序 