【问题标题】:SyntaxHighlighter doesn't show html code properlySyntaxHighlighter 无法正确显示 html 代码
【发布时间】:2014-09-08 11:40:29
【问题描述】:

在我的项目中,我使用 SyntaxHighlighter jQuery 插件来显示代码示例。 我真的很喜欢它,但我遇到了问题。 当我需要显示包含 HTML 的代码示例时,插件无法正常工作。

我添加了我需要的所有脚本和样式表:

    <link rel="stylesheet" type="text/css" href="syntax/styles/shCoreEclipse.css"/>
    <script src="syntax/scripts/shCore.js"></script>
    <script src="syntax/scripts/shBrushPhp.js"></script>
    <script src="syntax/scripts/shBrushXml.js"></script>

然后我有我的前置标签:

<pre class="brush: php; toolbar: false; html-script: true;">
    <html>
        <body>
            <div style="font-weight: bold"><?= str_replace("\n", "<br/>", $var) ?></div>
            <?
                /***********************************
                ** Multiline block comments
                **********************************/

                $stringWithUrl = "http://alexgorbatchev.com";
                $stringWithUrl = 'http://alexgorbatchev.com';

                ob_start("parseOutputBuffer");      // Start Code Buffering
                session_start();
            ?>
        </body>
    </html>
</pre>

我得到的输出是:

<div style="font-weight: bold"><!--?= str_replace("\n", "<br/-->", $var) ?></div>
<!--?
    /***********************************
    ** Multiline block comments
    **********************************/

    $stringWithUrl = "http://alexgorbatchev.com";
    $stringWithUrl = 'http://alexgorbatchev.com';

    ob_start("parseOutputBuffer");      // Start Code Buffering
    session_start();
?-->

Highlighter 删除了我的 html 和 body 标签。 我正在做文档中的所有事情:http://alexgorbatchev.com/SyntaxHighlighter/manual/demo/html-script.html

我做错了什么?

【问题讨论】:

  • 正确编码pre元素的内容——这意味着首先将&amp;lt;换成&amp;lt;,将&amp;gt;换成&amp;gt;

标签: javascript jquery html css syntaxhighlighter


【解决方案1】:

添加这个Js文件xregexp-min.js(从here下载)并添加以下脚本

<script type="text/javascript">
        SyntaxHighlighter.config.bloggerMode = true;
        SyntaxHighlighter.defaults['smart-tabs'] = false;
        SyntaxHighlighter.all();
</script>

对你有帮助

【讨论】:

  • bloggerMode = true 仅用于在 blogger.com 上托管?
  • smart-tabs: false 不起作用,即使在军官演示中,'smart-tabs' demo
猜你喜欢
  • 1970-01-01
  • 2023-03-04
  • 2021-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-25
  • 1970-01-01
  • 2021-09-17
相关资源
最近更新 更多