Colorizando um arquivo carregado dinamicamente
-
27-09-2019 - |
Pergunta
Estou usando o jQuery para carregar um arquivo em uma textarea e codemirror para colori -lo, mas parece que eles não jogam bem: posso fazer com que o arquivo seja carregado ou a textarea (com texto existente) para ser colorido, usando Um ou outro, mas quando o carrego e depois colori -o, acabo com uma textarea em branco. Aqui está o código relevante de minha página:
$("#corpo").load("jquery-latest.min.js"); /* random js file */
var editor = CodeMirror.fromTextArea("corpo", {
parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
path: "/codemirror/js/",
stylesheet: "/codemirror/css/jscolors.css"
});
Obrigado!
Solução
Provavelmente você tem que colocar a colorização em um retorno de chamada:
$("#corpo").load("jquery-latest.min.js", function() {
var editor = CodeMirror.fromTextArea("corpo", {
parserfile: ["tokenizejavascript.js", "parsejavascript.js"],
path: "/codemirror/js/",
stylesheet: "/codemirror/css/jscolors.css"
});
});
... Caso contrário, o Codemirror começa a funcionar antes que o conteúdo seja buscado (uma solicitação de Ajax no JQuery tem um desempenho de forma assíncrona).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow