繁体   English   中英

ajax请求后Cufon无法正常工作

[英]Cufon not working after ajax request

最初,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' });
});

更改

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

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

而且应该没问题。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM