How to disable Cufon on certain elements?
I currently use Cufon accross our site with something similar to Cufon.set('fontFamily', 'DIN Medium').replace('h1');
Now for a single H1 tag i would like Cufon to be disabled, this is without changing the H1 tag to any other tag, it must remain as it is.
I can add classes etc to the H1 tag if required, and can do any HTML/CSS/JS just not changing the actual tag.
Anyone know if this is possible and if it is how?
Tha开发者_运维问答nks in advance,
Shadi
Depending on which selector engine you use, you can:
- add a class to your exception h1 element
- you can use the :not selector to only apply cufon to the h1's that don't have the aforementioned class (with jQuery and classname 'clean' it would be something like
Cufon.replace('h1:not(.clean)');
function remove_cufon(selector) {
$(selector).html( cufon_text(selector) );
return true;
}
function cufon_text(selector) {
var g = '';
$(selector +' cufon cufontext').each(function() {
g = g + $(this).html();
});
return $.trim(g);
}
Usage:
remove_cufon('#name');
Using jQuery: Use the css class to h1 and specify in the selector...
$('h1.noCufon').each(function(){
var cufonText = '';
$('cufontext',$(this)).each(function(){
cufonText+=$(this).html();
});
if(cufonText!=''){
$(this).html(cufonText);
}
})
by single h1 you mean?
$('h1').each(function(){
if($(this).siblings('h1').length)
Cufon.set('fontFamily', 'DIN Medium').replace(this);
});
精彩评论