我正在尝试使用 Javascript 代码美化器,并提出一个问题。
如果我没有在静态 html 中分配class="prettyprint"
,<pre>
但希望稍后应用 prettyprint(例如,当用户单击我网页上的“着色”按钮时),我该如何实现?
稍微修改原始的 run_prettify.js 或 prettify.js 是可以接受的,因为我打算离线使用它。
我的实验:
编写 try-delay-class.html:
<html>
<head>
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
</head>
See it:
<pre>
class Voila {
public:
// Voila
static const string VOILA = "Voila";
// will not interfere with embedded <a href="#voila1">tags</a>.
}
</pre>
</html>
在 Chrome v26 中打开,调出控制台,执行:
pres=document.getElementsByTagName('pre')
pres[0].className+=" prettyprint"
语法颜色没有出现。