我经常使用R和Knitr来生成长html报告。报告使用markdown #
语法包含标头。这些标题为读者的导航提供了良好的方向......
......但报道有时会很长。从头到尾滚动需要很长时间。报告的读者在到达相关部分之前看到所有报告内容后感到恼火。
有没有办法在Knitr中实现折叠和扩展标题元素?
答案 0 :(得分:4)
您可以使用Javascript使元素折叠。 jQuery
JavaScript框架通过hide
和show
方法使这一点变得相当简单。
在包含Rmd
模板的文件夹中,创建一个名为script
的子文件夹,并将jQuery file保存在其中。 (不必在那里,但这是一个合理的标准位置。)
在Rmd
文件的顶部附近添加此代码。
<script type="text/javascript" language="javascript" src="script/jquery-1.10.2.min.js">
</script>
对于Markdown,结束标记必须为on a separate line。
或者,如果您的报告主要在有互联网访问权限的计算机上阅读,则可以 should使用Google托管的jQuery
版本。< / p>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" >
</script>
然后为折叠逻辑添加另一个脚本块。确切的实施取决于您;在互联网上有are lots of examples。
使折叠/扩展逻辑变得简单的关键是确保您操作的元素具有一致的类(或其ID的模式)。