Перезагрузка Cufon после загрузки Ajax, помогите пожалуйста - PullRequest
5 голосов
/ 03 января 2011

Я пробовал все возможные комбинации cufon.replace - Cufon.refresh и Cufon.reload, но я просто не могу заставить это работать.когда оригинальная страница загружается, cufon выполняет свою работу, но когда Ajax загружает новый контент, cufon отсутствует.вот моя надежда на Java, это имеет смысл для всех, сначала стреляет Куфон, а затем Ajax,

    jQuery.noConflict();

/*
  * TYPOGRAPHY
*/

Cufon.set('fontFamily', 'ColaborateLight');
Cufon.replace('h2, #main h3, h4, h5, h6, #slogan, .label', {
    hover: true
});

Cufon.set('fontFamily', 'Colaborate-Medium');
Cufon.replace('#main_home h3', {
    hover: true
});

jQuery(document).ready(function() {

    var hash = window.location.hash.substr(1);
    var href = jQuery('#nav2 li a').each(function(){
        var href = jQuery(this).attr('href');
        if(hash==href.substr(0,href.length-5)){
            var toLoad = hash+'.html #content';
            jQuery('#content').load(toLoad)
        }                                           
    });

    jQuery('#nav2 li a').click(function(){
    jQuery("#nav2 li a").addClass("current").not(this).removeClass("current");

        var toLoad = jQuery(this).attr('href')+' #content';
        jQuery('#content').hide('fast',loadContent);
        jQuery('#load').remove();
        jQuery('#wrapper').append('<span id="load">LOADING...</span>');
        jQuery('#load').fadeIn('normal');
        window.location.hash = jQuery(this).attr('href').substr(0,jQuery(this).attr('href').length-5);
        function loadContent() {
            jQuery('#content').load(toLoad,'',showNewContent())
        }
        function showNewContent() {
            jQuery('#content').show('normal',hideLoader());
        }
        function hideLoader() {
            jQuery('#load').fadeOut('normal');
        }
        return false;

    });

});

, и именно с этими страницами у меня возникают проблемы. Страница изменения климата В нижней части страницы вы увидите загрузчик Ajax со списком дополнительных меню.Я в отчаянии, ребята, пожалуйста, помогите ...

Ответы [ 7 ]

9 голосов
/ 05 мая 2011

У меня была такая же проблема, я не мог заставить это работать:

$("#my_div").load('some-ajax-file.php', Cufon.refresh);

Но, обернув Cufon.refresh в функцию, добились цели:

$("#my_div").load('some-ajax-file.php', function() { Cufon.refresh(); });
5 голосов
/ 26 октября 2012

это сработало для меня ...

$(document).ajaxSuccess(function() {  
    Cufon.refresh();
});
2 голосов
/ 14 февраля 2011

Вы можете попробовать это:

<code>function showNewContent() {
    Cufon.refresh();
    jQuery('#content').show('normal',hideLoader());
}

Это также обсуждается в документации cufon api - https://github.com/sorccu/cufon/wiki/API

1 голос
/ 18 июля 2012

После ответа ajax вы можете просто использовать

Cufon.refresh();

Это перезагрузит стиль шрифта cufon

0 голосов
/ 21 мая 2012
$(document).ajaxSuccess(function() { Cufon.refresh(); });

Надеюсь, это поможет:)

0 голосов
/ 11 января 2012

У меня была такая же проблема, и для более быстрого разрешения сделал встроенный CSS

 <h5 style="font-family:xxx, Helvetica, sans-serif"></h5>

<style type="text/css">
  @font-face { 
    font-family: SWZ721C; 
    src: url('../../includedfiles/xxx.TTF');
  }

  @font-face {
    font-family: MyCustomFont;
    src: url("../../includedfiles/xxx.eot") /* EOT file for IE */
  }
</style>
0 голосов
/ 10 января 2011

Попробуйте добавить это:

$(document).ajaxSuccess(function() {  
Cufon('h2'); // or whatever other cufon calls, really...
});
...