【发布时间】:2015-10-01 03:15:37
【问题描述】:
据我所知,每当我使用“嵌入代码”将包含模式 /</* 的 Javascript 插入 Weebly 页面时,它都会在已发布页面上替换为 /<\/*。
例如,这段代码:
<script type="text/javascript">
var hljs=new function(p){return p.replace(/</gm, "<"}
</script>
当我在浏览器中检查最后一页时显示如下:
<script type="text/javascript">
var hljs=new function(p){return p.replace(/<\/gm, "<"}
</script>
这是一个问题,因为它似乎搞砸了正则表达式,这些正则表达式旨在对我在页面上显示的代码进行语法高亮显示。我正在使用从 R Markdown 生成的 html + Javascript。当我在浏览器中打开 html 文件时,它们看起来很好,但是当我查看我放在 weebly 上的版本时,没有语法突出显示,并且我得到一个 SyntaxError(Chrome 中的Invalid regular expression flags,FireFox 中的unmatched ) in regular expression)。如果我查看源代码,唯一的区别是额外的反斜杠。
有人有解决办法吗?
更新:原来这是另一个问题的征兆。当 Rmarkdown 生成 html 时,它包含一个 <head></head> 块。重要的是要进入页面的实际标题。将整个内容粘贴到“嵌入代码”框中,就像我正在做的那样,将所有内容都推入正文。所以真正的解决方案是进入设计选项卡,将 Rmarkdown 标头代码添加到与您正在使用的页面布局对应的文件的标头中。
【问题讨论】:
标签: javascript html r-markdown weebly