Estoy usando Syntaxhighlighter en una página web, he creado una función javascript para cargar todos los pinceles usando SyntaxHighlighter.autoloader (...) y aplicar SyntaxHighlighter.all()Sintaxishighlighter no puede encontrar ningún pincel después de la solicitud de ajax
Ejecuto esta función una vez cuando la página se carga, como resultado: el resaltado de sintaxis se aplica correctamente.
Después, cargo algunos contenidos nuevos usando ajax y ejecuto esta misma función para resaltar también el contenido nuevo.
Sin embargo, esta vez Syntaxhighlighter parece haberse olvidado de todos los pinceles cargados, me aparece una alerta diciendo que el pincel no está cargado.
que no tienen idea de lo que está causando esto aunque he mirado alrededor y encontrado 2 causas posibles:
An issue on the bitbucket repository
Esto se parece a la solución, pero cuando uso los shCore.js sin envasar desde el repositorio de mi IDE indica un error de sintaxis y obtengo errores de JavaScript cuando intento ejecutarlo de todos modos.
Otra solución que he encontrado en algunas respuestas en otras publicaciones similares de Stack Overflow es utilizar SyntaxHighlighter.highlight() en lugar de .all() después de que la página se haya cargado. Esto no funciona sin embargo.
La función que estoy 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();
}
}
¿Alguien tiene alguna idea sobre cómo solucionar este problema? (O alguien puede señalar cómo puedo hacer el cambio sugerido en bitbucket)
Gracias
Esto me ayudó! Muchas gracias (incluso si han pasado casi 4 años desde entonces ...) –