【发布时间】:2014-04-26 17:06:41
【问题描述】:
是否有一个很好的 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> 标签不会有任何其他类。
【问题讨论】:
-
为什么不简单地使用 jQuery 并为这些元素添加 css 规则?
-
你用过搜索引擎吗?
-
@alex -
<code>标记中的 JavaScript 代码无法使用 CSS 设置样式。 @PhistucK-是的,我找到了,但找不到太多,也许我没有按正确的条件进行搜索。我找到了 google-code-prettify (code.google.com/p/google-code-prettify),但需要在<code>标签中添加一个类。 -
但是那些用于 javascript 的
<code>标记不会以任何方式呈现。那你想做什么?让它们呈现为普通的 html 元素?这里的基本问题是它们在<body>之外,它仍然可以在现代浏览器中呈现,但具有未定义的行为。不过,您可以编写一个 jQuery 脚本,将这些元素包装在其他元素中。我认为甚至应该可以在 html 中的不同位置剪切和粘贴它们,但是您说您不想这样做。但是,由于上述问题,我怀疑是否存在一个库。 -
试图理解你写的@alex,但有困难。我想要这样的东西:google-code-prettify.googlecode.com/svn/trunk/README.html
标签: javascript html prettify