Ich verwende prettyprint Plugin als Syntax Highlighter, es funktioniert gut, wenn Seite geladen wird, aber wenn ich neue Elemente dynamisch hinzufügen, funktioniert es nicht! Ich habe versucht, prettyPrint()
zu verwenden, um es nach dem Laden der neuen Inhalte aufzurufen, aber es hat nicht funktioniert! Ich folgte auch den Anweisungen auf der Plugin-Website, indem ich prettyPrint()
mit einer Funktion verpackte, aber es funktionierte auch nicht! jede Hilfe würde sehr geschätzt werden. i installiert das Plugin wie folgt aus:Wie bekomme ich prettyprint zur Arbeit am dynamisch generierten dom-Element
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
mein Code:
function showCode(e){
(e.preventDefault) ? e.preventDefault() : e.returnValue = false;
var parent = document.createElement('div'),
pre = document.createElement('pre'),
code = document.createElement('code'),
elm = (e.currentTarget) ? e.currentTarget : e.srcElement,
src = elm.getAttribute('href'),
id = elm.getElementsByTagName('img')[0].getAttribute('src').replace(/images\/(.+?)\.png/g, "$1");
parent.id = "codeZoom";
pre.className = "prettyprint linenums lang-" + id;
var xhr = (window.XMLHttpRequest) ? new window.XMLHttpRequest() : new activeXObject("Microsoft.XMLHTTP");
xhr.open('get', src, true);
xhr.send();
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4 && xhr.status == 200)
{
var text = document.createTextNode(xhr.responseText);
code.appendChild(text);
pre.appendChild(code);
parent.appendChild(pre);
document.getElementsByTagName('body')[0].appendChild(parent);
center(parent);
prettyPrint();
}
}
}
derzeit Ich erhalte die Fehlermeldung Schöndruck ist nicht definiert.
Sie müssen einen Kontext anzeigen. Wenn "prettyPrint" nicht definiert ist, liegt es daran, dass es nicht definiert ist! Unmöglich, mit Ihrem aktuellen Code zu wissen – Alexander
Ich habe den Link zur Plugin-Website hinzugefügt, es soll 'prettyPrint'-Funktion erstellen, wenn Seite lädt, was ich denke, es funktioniert, weil es auf andere' pre' Elemente beim Starten der Seite funktioniert! –
aber hier steht: http://google-code-prettify.googlecode.com/svn/trunk/README.html das kann ich (zum Ende der Seite scrollen), nein? –