今天在徐州网站建设专家——淮海互联网站中加了一个代码高亮的功能,在页面上直接放代码可以完美的运行,可是把代码贴进FCKeditor编辑框里发布后,问题就出现了,代码都挤在了一行里,查看源代码后发现,FCKeditor把textarea里的换行给过滤掉了,于是试着去找FCKeditor里过滤的地方,结果,未能如愿,最后,偷了一下懒,把用到textarea的地方改了个名字改成了textarea_z,相应地shCore.js里的FindTagsByName(elements,name,'textarea');这句改成FindTagsByName(elements,name,'textarea_z');第一次保存正常,回过头来,再修改再保存后,又出现原来的问题了,真对FCKeditor无语了。
下面是dp.SyntaxHighlighter的使用方法。
使用js脚本来动态进行代码着色的一个明显的好处在于:不会对原始的代码进行修改,保证原始代码的正确性(基本上所有的通过语法解析然后对字符串添加<span></span>来进行着色的话或多或少会产生解析错误,并且增加文件大小)。但同时执行效率将有赖于客户端机器的性能。目前此脚本支持的语言类型包括:
- c#, c-sharp, csharp
- vb, vb.net
- delphi, pascal
- js, jscript, javascript
- php
- py, python
- sql
- xml, xhtml, xslt, html, xhtml
使用方法简介:
1. 把你需要进行代码高亮的源代码部分放置在特定的textarea中。
2. 在所有textarea之后放置以下代码。
添加之后的效果正如本文的代码演示。
缺省情况下代码显示区域宽度为100%,即充满整个区域。如果需要固定显示区域的宽度(可以防止单行代码过长撑破页面布局),可以修改SyntaxHighlighter.css样式文件中的 .dp-highlighter样式的宽度,把100%改为你想要的px数值即可。