2010-02-26 8 views
1

je veux redimensionner la police de tous les éléments d'une page comme utilisateur peut cliquer increaseFont ou decreaseFont cela diminuera les polices de tous elems iam faisant faire comme écrit ci-dessous s'il vous plaît suggérer quelques mieux cheminredimensionnement du texte du document entier en utilisant jquery

$.fn.ChangeFont=function(ratio) 
{ 
return this.each(function(){ 
var _elm=$(this); 
var currFontSize = _elm.css('fontSize'); 
var finalNum = parseFloat(currFontSize, 10); 
var stringEnding = currFontSize.slice(-2); 
finalNum *= ratio; 
finalNum=finalNum + stringEnding; 
_elm.css('fontSize',finalNum); 
}); 
} 

$(document).find('*').andSelf().ChangeFont(1.2);//a value bigger than 1 for increase 
$(document).find('*').andSelf().ChangeFont(.8);//a value smaller than 1 for decrease 

Répondre

2

Ne pourriez-vous pas simplement définir la propriété font-size sur l'élément BODY à 125% ou 150%?

$("body").css("font-size", "150%"); 
+0

Je ne pense pas que cela va augmenter ou diminuer la taille des éléments, laissez-moi vérifier –

+0

Je pense que cela dépendra de votre page - si vous avez une taille relative (% ou em) ou fixe (.px, pt) sur vos polices . –

0

Cela dépend de la façon dont le reste de votre CSS est structuré et les unités que vous utilisez pour attribuer tailles de police dans le reste de la page. Si vous utilisez em ou % il suffit de faire comme Chase Seibert dit:

$("body").css("font-size", "150%"); 

Donc il suffit d'utiliser les bonnes unités dans votre CSS, puis manipuler le texte principal de taille du corps. Sinon, vous pouvez également choisir un élément comme un div qui agit comme l'élément racine de tout le contenu textuel sur la page que vous créez.

Comme un commentaire de @praveen dit aussi que cela ne vous affectera pas nécessairement le contenu non textuel.

Questions connexes