在ajax请求之后,Cufon没有工作

时间:2011-09-23 03:06:47

标签: javascript jquery ajax fonts cufon

最初cufon取代了主页文本。

加载另一个页面文件后,cufon不会将其替换为新加载的内容。为什么呢?

我添加了cufon.refresh();作为链接函数的最后一个。我注意到cufon试图替换字体,看起来默认字体似乎覆盖了cufon字体。我注意到cufon在默认返回常规字体之前简短地更改了字体。所以我知道它正在尝试替换文本。

也许我的操作顺序错了?任何帮助表示赞赏。如果我的代码很乱,请随时清理它,随时打开以获取建议。

这是我的代码:

$(document).ready(function(){
    $.ajaxSetup({cache:false});
    // Hide Colored Lines                      
    $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
    $("div#linksContainer a, div#meContainer a").click(function(){
        var toLoad = $(this).attr('href')+' #homeContent';                               
        var post_id = $(this).attr("rel");
        if(post_id == "25"){
            $("#home").fadeIn(2400);
            $("div#line-1").animate({height: 'toggle'},1200);   
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "5"){
            $("#home").hide('fast');
            $("div#line-2").animate({height: 'toggle'},1200);
            $("div#line-1,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "7"){
            $("#home").hide('fast');
            $("div#line-3").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-1,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "337"){
            $("#home").hide('fast');
            $("div#line-4").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-1,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "13"){
            $("#home").hide('fast');
            $("div#line-5").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-1,div#line-6,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "339"){
            $("#home").hide('fast');
            $("div#line-6").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-1,div#line-7,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "341"){
            $("#home").hide('fast');
            $("div#line-7").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-1,div#line-8,div#line-9,div#line-10").hide();
        }else if(post_id == "212"){
            $("#home").hide('fast');
            $("div#line-8").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-1,div#line-9,div#line-10").hide();
        }else if(post_id == "11"){
            $("#home").hide('fast');
            $("div#line-9").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-1,div#line-10").hide();
        }else if(post_id == "16"){
            $("#home").hide('fast');
            $("div#line-10").animate({height: 'toggle'},1200);
            $("div#line-2,div#line-3,div#line-4,div#line-5,div#line-6,div#line-7,div#line-8,div#line-9,div#line-1").hide();
        }
        $('#homeContent').hide('fast',loadContent);
        $('#load').remove();
        $('#wrapper').append('<span id="load">LOADING...</span>');
        $('#load').fadeIn('normal');
        function loadContent(){
            $("#homeContent").load(toLoad,{id:post_id},showNewContent());
        }
        function showNewContent(){
            $("#homeContent").show('fast',hideLoader());
        }
        function hideLoader() {
        $('#load').fadeOut('normal',changeFonts());
        }
        function changeFonts(){
            Cufon.refresh();    
        }
        return false;
    });
Cufon.replace('h1, h2, p, strong', { fontFamily: 'Museo 300' });  
Cufon.replace('h3, h4, h5, h6, #postContent a', { fontFamily: 'Quicksand Book' });
});

1 个答案:

答案 0 :(得分:0)

更改

$('#load').fadeOut('normal',changeFonts());

$('#load').fadeOut('normal',changeFonts);

它应该没问题。

您的其他动画/加载回调也是如此,您希望传递函数对象,而不是它们的返回值。