代码之家  ›  专栏  ›  技术社区  ›  Praveen Prasad

使用jquery调整整个文档的文本大小

  •  1
  • Praveen Prasad  · 技术社区  · 16 年前

    我想调整页面所有元素的字体大小 就像用户可以单击增加字体或减少字体一样,这将减少所有元素的字体。 我按照下面写的做 请建议一些更好的方法

    $.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
    
    2 回复  |  直到 16 年前
        1
  •  2
  •   Chase Seibert    16 年前

    您不能将body元素的font-size属性设置为125%或150%?

    $("body").css("font-size", "150%");
    
        2
  •  0
  •   JeroenEijkhof    16 年前

    这取决于CSS的其余部分是如何构造的,以及在页面的其余部分使用什么单位来分配字体大小。如果您正在使用 em 或 % 然后就可以像蔡斯·塞伯特所说的那样:

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

    所以只需在CSS中使用正确的单位,然后操作主体文本大小。否则,您也可以选择一个类似于DIV的元素,该元素充当您正在创建的页面上所有文本内容的根元素。

    正如@praveen的评论所说,这不一定会影响你的非文本内容。