如何将逐字源代码包含到html文档中

时间:2016-11-06 02:03:13

标签: javascript html reveal.js

我写了几个与reveal.js演示文稿存在于同一个存储库中的C ++程序。我想做的是简单地将C ++源文件包含到我的文档中。

首先,我找到了一种使用以下函数将文件包含到html文档中的好方法(感谢stackoverflow):

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(function(){
  $("#awesomecpp").load("../src/awesome.cpp");
});
</script>

然后我将它包含在我的reveal.js演示文稿中:

<pre><code data-trim>
<div id="awesomecpp"></div>
</code></pre>

然而,这不是bueno,因为我最终在源代码的顶部加<div id="awesomecpp>,在源代码片段的末尾加上一堆其他垃圾标记。我非常不想复制和粘贴代码,因为我发现我经常对代码进行更改,并且可能不会对表示代码进行更改。此外,我发现如果有任何特殊字符,如'&amp;',也会发生不好的事情。有没有人有任何建议使用javascript库,可以处理我想要正确做的事情?我只是想将一个文件逐字包含在我的reveal.js演示文稿中。那是过分的要求?

2 个答案:

答案 0 :(得分:3)

尝试这样的事情:

{{1}}

答案 1 :(得分:2)

问题是reveal.js使用highlight.js进行语法突出显示,并使用code标记的内容(在这种情况下你的div

您很可能需要将ID放在code标记上。

<pre><code data-trim id="awesomecpp">
</code></pre>

你可能还必须阻止reveal.js初始化语法高亮显示,并在加载ajax后手动运行它。