2009-12-23 11 views
2

J'utilise cufon pour un remplacement de police et jQuery pour construire un accordéon personnalisé.Cufon - jQuery, Remplacer la couleur de la police sur le clic

le code de mon accordéon est quelque chose comme ceci:

$(".acc-title").click(function() { 
    //show something, hide something etc. 
}); 

Est-il possible lors de l'événement de clic pour changer la couleur de la police remplacée (avec de CUFON)?

quelque chose comme:

$(".acc-title").click(function() { 
     //some something, hide something etc. 
     Cufon.replace('how do i select ONLY the title of this', { color: '#fff' }); 
}); 

Répondre

0

Je regarderais en utilisant une classe CSS au lieu de changer la couleur par la fonction css

$(document).ready(function(){ 
    $(".acc-title").click(function() { 
     $("#cufonid").addClass('cufonCSSClass'); 
    }); 
}); 

Bien que, si vous cherchez à afficher/cacher:

 $("#cufonid").show(); 
     $("#cufonid").hide(); 

Si vous utilisez acc-title, alors ce qui suit suffira:

$(".acc-title").click(function() { 
     $(this).addClass('cufonCSSClass'); 
     //or 
     $(this).hide(); 
     //etc, etc 
    }); 

Vous pouvez également accélérer le sélecteur de titre acc en le combinant avec l'ID d'un élément parent.

$("#somparentid .acc-title").click(function() { 

Ou donner à l'article un ID mmêe:

$("#acc-title").click(function() { 

Ou, votre h2 (ce qui est un peu plus lent, cependant):

$("h2.acc-title").click(function() { 

Donc, pour résumer, votre réponse pourrait ressembler à quelque chose comme:

$(document).ready(function(){ 
    $("h2.acc-title").click(function() { 
     $(this).addClass('cufonCSSClass'); 
    }); 
}); 

Mais je suis Je ne suis pas tout à fait sûr de ce que vous recherchez

+0

cela ne semble pas fonctionner. peu importe comment je fais référence à l'élément, il ne change pas de couleur pendant un événement (clic) – tsiger

+0

Vérifiez que les sélecteurs obtiennent quelque chose, par exemple alert ($ (yourselector) .length); // devrait être 1 ou plus –

15

Vous devez utiliser Cufon.refresh(); après avoir changé la couleur par CSS. Comme ceci:

$("#tab1").click(function() { 
    $("#tab2").removeClass("selected"); 
    $("#tab1").addClass("selected"); 
    Cufon.refresh(); 
} 
+0

Merci beaucoup! Cela m'a beaucoup aidé, j'ai toujours lutté quand j'ai eu besoin de changer la couleur de la police du texte cufon dynamiquement ... – Max

+0

génial cela m'a aidé aussi et devrait être marqué corretc –