是否有一个优秀的JavaScript库可以使用<code>
标记格式化和突出显示代码,并且不要求我以任何方式修改HTML?我无法控制HTML,我只能添加外部JavaScript代码。当然,我可以添加改变HTML的外部JavaScript代码......但是一个简单的JavaScript库可以处理所有理想的代码。
更新 :我目前正在每个页面中执行以下操作以使用google-code-prettify:
<script>
var codes = document.getElementsByTagName("code");
for (var i = 0; i < codes.length; i++) {
codes[i].className = 'prettyprint';
}
</script>
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
我可以使用className +=
,但我知道<code>
个标签不会有任何其他类。
答案 0 :(得分:0)
您可以很好地使用您自己找到的库(https://code.google.com/p/google-code-prettify/),并使用您的小脚本为每个<code>
标记添加所需的类(请参阅fiddle):
var myFunction = function()
{
var elements = document.getElementsByTagName("code");
for (var i = 0; i < elements.length; i++)
{
elements[i].className += "prettyprint";
}
window.PR.prettyPrint();
}
请注意,要手动调用prettyPrint,必须使用正确的范围:window.PR.prettyPrint();
。