私はWebページ上でSyntaxhighlighterを使用していますが、SyntaxHighlighter.autoloader(...)を使用してすべてのブラシをロードし、SyntaxHighlighter.all()を適用するjavascript関数を作成しましたSyntaxhighlighterはajaxリクエスト後にブラシを見つけることができません
ページが読み込まれたときにこの関数を1回実行すると、構文ハイライトが正しく適用されます。
その後、私はajaxを使っていくつかの新しいコンテンツを読み込み、この同じ関数を実行して新しいコンテンツを強調表示します。
しかし今回はSynthhighlighterがロードされたすべてのブラシを忘れていたようですが、ブラシがロードされていないという警告が表示されます。
私は周りを見回したと2考えられる原因を発見したが、これを引き起こしているものは考えていない:私はリポジトリからアンパックshCore.jsを使用する場合は、私の解決策のように見えるが
An issue on the bitbucket repository
をIDEは構文エラーを示して、とにかく実行しようとするとjavascriptエラーが発生します。
私が他の同様のスタックオーバーフローポストのいくつかの答えで見つけたもう一つの解決策は、ページがロードされた後.all()の代わりにSyntaxHighlighter.highlight()を使用することです。しかし、これは動作しません。
私が使用している機能:
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();
}
}
誰もがこの問題を解決する方法上の任意のアイデアを持っていますか? 'ahk ' + app.assets + 'js/syntaxhighlighter/brushes/shBrushAhk.js'
:(または誰かが私には変更はビットバケットに提案することができますどのように私を指摘することができます)
おかげ
これは、私を助けてくれ!ありがとうございました(それがその後4年近く経っていても...) –