SyntaxHighlighter - вызвать SyntaxHighlighter.all(), чтобы выделить динамически сгенерированный XML
У меня есть код JavaScript, который генерирует XML и вызывает SyntaxHighlighter.all()
метод, чтобы выделить добавленный XML. Я не получаю ошибок в консоли, но подсветка также не происходит.
JavaScript:
<script type="text/javascript" src="js/syntaxhighlighter_3.0.83/scripts/shCore.js"></script>
<script type="text/javascript" src="js/syntaxhighlighter_3.0.83/scripts/shBrushXml.js"></script>
<link type="text/css" rel="stylesheet" href="js/syntaxhighlighter_3.0.83/styles/shCoreDefault.css"
<script>
function generateXML()
{
var result="<test>WHATEVA</test>";
alert(result);
var regex1 = new RegExp('<', 'g');
var regex2 = new RegExp('>', 'g');
result = "<pre class='brush: xml'>" + result.replace(regex1,'<').replace(regex2,'>')+"</pre>";
document.getElementById("generatedXML").innerHTML = result;
}
</script>
HTML
<input id="addOUTPUTButton" type="button" value="Generate XML" onclick="generateXML()"/>
<input id="test" type="button" value="Test" onclick="SyntaxHighlighter.all();"/>
<div id="generatedXML">
</div>
2 ответа
Решение
Решение заключается в использовании highlight()
вместо all()
,
Вот JSFiddle, обратите внимание, что используются внешние ресурсы: http://jsfiddle.net/menelaosbgr/TXzZH/
Понял. Я надеялся получить ответ, который также поддержал бы более новую версию. В любом случае jsfiddle не работает, так что по крайней мере добавление комментария с упоминанием версии может быть полезным.
Спасибо за ответ.