使用jQuery到达div的最后一点时减小字体大小

时间:2013-09-05 06:33:43

标签: jquery

嗨朋友我希望当父font size到达div100px height减少<div class="divContent" contenteditable="true" autocomplete="off"> Start Typing</div> 以下是我的代码,或者你可以看到这里的小提琴http://jsfiddle.net/VzBw9/1/

HTML

$('.divContent').keyup(function(){
        //alert($(this).height())
        if (($(this).height()) > 100)
        {   
        var font = $('.divContent').css('font-size');
        alert(font)
        $(this).css('font-size',''+font-2+'px')
        alert(font);
            }
        })

SCRIPT

{{1}}

请帮助朋友......

2 个答案:

答案 0 :(得分:1)

你非常接近这一点。看一下解决方案:http://jsfiddle.net/VzBw9/3/。您必须将字体变量转换为数字,因为您试图从“16px”中减去2,这显然不是数字:

$('.divContent').keyup(function(){
    //alert($(this).height())
    if (($(this).height()) > 100){  
        var font = $('.divContent').css('font-size');
        alert(font);
        font = parseInt(font) - 2;
        font += 'px';

        $(this).css('font-size',font);
        alert(font);
    }
})

答案 1 :(得分:0)

您在字符串“16px”上应用“ - ”。刚刚施展

$('.divContent').keyup(function(){
    //alert($(this).height())
    if (($(this).height()) > 100)
    {   
    var font = $('.divContent').css('font-size');
    var fontSizeAsNumber = font.substring(0,2);
    var newFontSize = fontSizeAsNumber -2;
    $(this).css('font-size',newFontSize+'px');
        }
    })