.load()之后的DOM操作

时间:2014-01-23 19:29:58

标签: javascript jquery html ajax dom

尝试使用Rainbow.js进行语法突出显示。我有一个分页导航,在点击时,将页面(#page2)加载到body。它工作得很好,但是当我调用Rainbow.color()(在DOM中搜索预定义的pre标签内的语法)时,它无法为其着色。首次加载页面时,我会调用此事件:

$(window).load(function() {
    /* Act on the event */
    Rainbow.color();
});

它运作得很好!但是当我调用这个函数时,Rainbow.color()不会突出显示任何内容!

$('.pure-paginator .pure-button').on('click', function () {
    $('#content').load('html.html ' + $(this).attr('href'));
    Rainbow.color();
});

感谢您的帮助,如果您需要更多代码,请与我们联系!

1 个答案:

答案 0 :(得分:4)

Ajax是异步的。把你的电话放在ajax回调中:

$('.pure-paginator .pure-button').on('click', function () {
    $('#content').load('html.html ' + $(this).attr('href'), function() {
        Rainbow.color();
    });
});