Sto usando Syntaxhighlighter in una pagina Web, ho creato una funzione javascript per caricare tutti i pennelli utilizzando SyntaxHighlighter.autoloader (...) e applicare SyntaxHighlighter.all()Syntaxhighlighter non trova pennelli dopo una richiesta Ajax
Eseguo questa funzione una volta caricata la pagina, risultato: l'evidenziazione della sintassi viene applicata correttamente.
Successivamente, carico alcuni nuovi contenuti utilizzando ajax ed eseguo questa stessa funzione per evidenziare anche il nuovo contenuto.
Tuttavia questa volta sembra che Syntaxhighlighter abbia dimenticato tutti i pennelli caricati, ricevo un avviso che dice che il pennello non è stato caricato.
ho idea che cosa sta causando questo anche se ho guardato intorno e ha trovato 2 possibili cause:
An issue on the bitbucket repository
Questo appare come la soluzione, ma quando uso lo shCore.js decompressi dal repository mia IDE indica un errore di sintassi e ottengo errori javascript quando provo a eseguirlo comunque.
Un'altra soluzione che ho trovato su alcune risposte su altri post di Overflow dello stack simili è utilizzare SyntaxHighlighter.highlight() anziché .all() dopo che la pagina è stata caricata. Questo non funziona comunque.
La funzione che sto usando:
function loadSyntaxHighLighter() {
SyntaxHighlighter.autoloader(
'ahk ' + app.assets + 'js/syntaxhighlighter/brushes/shBrushAhk.js',
'aps ' + app.assets + 'js/syntaxhighlighter/brushes/shBrushAppleScript.js'
//...
);
SyntaxHighlighter.defaults['toolbar'] = false;
if (SyntaxHighlighter != 'undefined') {
SyntaxHighlighter.highlight();
} else {
SyntaxHighlighter.all();
}
}
Qualcuno ha qualche idea su come risolvere questo problema? (O qualcuno mi può indicare come posso fare la modifica suggerita sul bitbucket)
Grazie
Questo mi ha aiutato! Grazie mille (anche se sono passati quasi 4 anni da allora ...) –