suchen

Heim  >  Fragen und Antworten  >  Hauptteil

So markieren Sie neu generierte Codeblöcke mit highlight.js - Javascript -

Zum Beispiel der Segmentfehlereditor. . . . .

Nur der Codeblock wird nicht hervorgehoben, der von Baidu gefundene Inhalt

hljs.initHighlightingOnLoad();
Wird das Rendering nicht während des Ladens ausgeführt? Mit anderen Worten, alle danach vorgenommenen Änderungen am Dokument werden nicht ausgeführt. Dies kann also offensichtlich nicht den Code des von der Schnittstelle abgerufenen Dokuments hervorheben.

Beachten Sie, dass ich von neu generierten Inhalten spreche, die Codehervorhebung ist ungültig, nur Vorcode, keine Klasse. . .

怪我咯怪我咯2702 Tage vor1033

Antworte allen(1)Ich werde antworten

  • 怪我咯

    怪我咯2017-07-05 10:44:48

    高亮代码不止这一种方式,hljs.initHighlightingOnLoad()只不过是将高亮操作绑定在了文档加载事件上而已。

    hljs.initHighlightingOnLoad()代码:

    function h(){addEventListener("DOMContentLoaded",_,!1),addEventListener("load",_,!1)}

    可以看HLJS的官方文档:
    https://highlightjs.org/usage/

    Custom Initialization部分有代码示例:
    示例1:

    $(document).ready(function() {
        $('pre code').each(function(i, block) {
            hljs.highlightBlock(block);
        });
    });

    示例2

    hljs.configure({useBR: true});
    
    $('p.code').each(function(i, block) {
        hljs.highlightBlock(block);
    });

    所以,如果你只需要高亮单个区域,只要

    hljs.configure({ ... });
    hljs.highlightBlock($('....'));

    语言相关的配置是通过.configure配置的,配置项可以参考:http://highlightjs.readthedoc...

    Antwort
    0
  • StornierenAntwort