2009-12-23 128 views
2

我正在使用cufon进行一些字体替换和jQuery来构建自定义手风琴。Cufon - jQuery,点击替换字体颜色

我的手风琴的代码是这样的:单击事件改变替换(带的Cufón)字体的颜色期间

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

是否有可能?

类似:

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

回答

0

我会在看通过CSS功能使用CSS类,而不是改变颜色

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

虽然,如果你正在寻找显示/隐藏:

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

如果ACC标题是你在操作的事情,那么以下就足够了:

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

您还可以通过将上述acc标题选择器与父元素的ID结合来加快速度。

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

还是给项目ID itslef:

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

或者,您H2(这是一个慢一点,虽然):

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

因此,要总结,你的答案可能看起来像这样:

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

但我是g因为我并不完全确定你在做什么

+0

它似乎没有工作。无论我如何参考该项目,它在事件期间都不会改变颜色(单击) – tsiger 2009-12-23 12:44:25

+0

检查您选择器是否正在获取某些内容,例如alert($(yourselector).length); //应该是1或更多 – 2009-12-23 12:55:14

15

您必须使用Cufon.refresh();通过CSS更改颜色后。像这样:

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

非常感谢!这对我有很大帮助,当我需要动态更改cufon文本的字体颜色时,我总是很挣扎...... – Max 2010-08-26 14:52:03

+0

这对我也有帮助,应该标记为corretc – 2012-06-25 13:24:50