0

只是尝试编写一个 jQuery 函数,该函数将在调用时增加所有 p 标签的字体大小。到目前为止,我已经这样做了...

$("#incfont").click(function() {            
    $('p').each(function(){
        var fontsize;
        fontsize = parseInt($(this).css('font-size'));
        $(this).css({'font-size':(fontsize+1)+'px'});
    })
})

它似乎增加了一次字体,但之后没有任何调用。

任何建议表示赞赏。

4

4 回答 4

1

您不需要那个中间变量或函数;看这里

$("#incfont").click(function() {
    $('p').css('font-size','+=1');
});
于 2013-11-14T03:53:32.680 回答
0

我设法解决了这个问题,

我需要 parseFloat() 而不是 parseInt 从每个元素中提取的字体大小。

于 2013-11-14T03:48:29.623 回答
0

尝试这个:

var fontsize;
$("#incfont").click(function() {

                $('p').each(function(index){
                    if(index==0){
                    fontsize = parseInt($(this).css('font-size'));
                    }
                    $(this).css({'font-size':(fontsize+=1)+'px'});

                })
            })

演示:http: //jsfiddle.net/yLgCB/

于 2013-11-14T03:48:47.890 回答
0

这将是另一种方式:演示

function resizeText(multiplier) {
var p = $("p")[0];
  if (p.style.fontSize == "") {
    p.style.fontSize = "1.0em";
  }

  p.style.fontSize = parseFloat(p.style.fontSize) + (multiplier * 0.2) + "em";
}
于 2013-11-14T03:50:08.653 回答