如何在'window'发出'load'事件后加载内容时使用Alex Gorbatchev的Syntax Highlighter?我这样想:
$.ajax({
url: file,
success: function(data) {
$('.fileName').text(file);
$('#fileSource > pre').text(data);
SyntaxHighlighter.all();
}
});
......但它不起作用。我需要提一下,ajax调用可以在页面加载后随时发生。
此致
答案 0 :(得分:38)
- SyntaxHighlighter.all()
绑定窗口加载。因此,如果要在页面加载时突出显示元素,请使用此方法。
- SyntaxHighlighter.highlight()
都会突出显示元素。所以你最好使用它。
- SyntaxHighlighter.highlight()
有两个参数,两者都是可选的。
<强> 1。参数 globalParams :
@param {Object} globalParams,可覆盖元素参数的可选参数。仅在指定元素时使用。
<强> 2。参数元素:
@param {Object}元素,要突出显示的可选元素。如果未提供,则突出显示当前文档中的所有元素。
- 有关此内容的更多信息,请转到 syntaxhighlighter_3.0.83 / src / shCore.js
答案 1 :(得分:5)
我在他的一个例子中找到了我的问题的答案:
$.ajax({
url: file,
success: function(code) {
$('.fileName').text(file);
var brush = new SyntaxHighlighter.brushes.JScript(),
html;
brush.init({ toolbar: false });
html = brush.getHtml(code);
document.getElementById('source').innerHTML = html;
}
});
答案 2 :(得分:-1)
只需添加此部分
$(document).ready(function () {
$('.code').each(function () {
SyntaxHighlighter.all();
});
});