如何指定从本地Web服务器运行哪个reveal.js演示文稿?

Hel*_*bye 5 node.js reveal.js

根据reveal.js 设置说明,对于某些可用的功能(如外部Markdown和演讲者注释),演示文稿需要从本地Web服务器运行.

但是,如果我按照说明操作,则无法指定要开始的演示文稿,我得到的是一个包含两张幻灯片的演示文稿"幻灯片1"和"幻灯片2".查看上面部分时,似乎是在reveal.js存储库中显示的是"index.html",即不是我想要呈现的表示.

如何从本地Web服务器运行演示文稿而不将reveal.js文件夹的内容复制或移动到我的演示文稿所在的文件夹中,而无需复制,移动或重命名演示文稿?

sim*_*lev 5

使用符号链接.

假设您家中有一个目录,您可以在其中保存所有演示文稿.从您安装reveal.js的目录运行:

ln -s ~/presentations presentations
Run Code Online (Sandbox Code Playgroud)

然后在浏览器中访问http:// localhost:8000/presentations以获取所有演示文件的列表(当然,如果其中一个名为index.html).单击其中任何一个以显示它.

注意:如果您的演示文稿位于服务器的根目录(您安装reveal.js的目录)之外,则reveal.js资源链接必须是绝对的,而不是相对的.这样,它们将相对于根目录(reveal.js所在的位置)而不是当前目录(表示所在的位置)被拾取.

例如,在示例演示文稿文件中,您需要转换以下行:

<link rel="stylesheet" href="css/reveal.css">
<link rel="stylesheet" href="css/theme/black.css">
<link rel="stylesheet" href="lib/css/zenburn.css">
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.js"></script>
{ src: 'plugin/markdown/marked.js' },
{ src: 'plugin/markdown/markdown.js' },
{ src: 'plugin/notes/notes.js', async: true },
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
Run Code Online (Sandbox Code Playgroud)

成:

<link rel="stylesheet" href="/css/reveal.css">
<link rel="stylesheet" href="/css/theme/black.css">
<link rel="stylesheet" href="/lib/css/zenburn.css">
<script src="/lib/js/head.min.js"></script>
<script src="/js/reveal.js"></script>
{ src: '/plugin/markdown/marked.js' },
{ src: '/plugin/markdown/markdown.js' },
{ src: '/plugin/notes/notes.js', async: true },
{ src: '/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
Run Code Online (Sandbox Code Playgroud)