FontSizer脚本有更简洁的方法吗?

时间:2014-09-04 08:07:22

标签: jquery cookies code-cleanup

我使用Jquery-Cookie存储fontsize以及链接是否处于活动状态。 一切都像我想要的一样。但我是Jquery的新手,我想问你们这些人是否有更清洁,更快捷的方法。

因此,活动链接是下划线,我也将其存储在cookie中。

<script>
$(document).ready(function () {

    $("body").css("font-size", $.cookie('font-size'));
    var underline = $.cookie('active');
    $(underline).addClass('activefontsize');

    $(".small").click(function () {
        $('.activefontsize').removeClass('activefontsize')
        $(this).addClass('activefontsize')
        $("body").css("font-size", "11px");
        $.cookie('font-size', '11px');
        $.cookie('active', '.small');
    });

    $(".normal").click(function () {
        $('.activefontsize').removeClass('activefontsize')
        $(this).addClass('activefontsize')
        $("body").css("font-size", "12px");
        $.cookie('font-size', '12px');
        $.cookie('active', '.normal');
    });

    $(".big").click(function () {
        $('.activefontsize').removeClass('activefontsize')
        $(this).addClass('activefontsize')
        $("body").css("font-size", "13px");
        $.cookie('font-size', '13px');
        $.cookie('active', '.big');
    });

});
</script>

1 个答案:

答案 0 :(得分:0)

<强>更新:

我想这很干净:

$(document).ready(function () {

    $("body").css("font-size", $.cookie('font-size'));
    var underline = $.cookie('active');
    $(underline).addClass('activefontsize');

    $(".small, .normal, .big").click(function () {
        $('.activefontsize').removeClass('activefontsize')
        $(this).addClass('activefontsize');
        var fontsize=0;
        var myClass=$(this).attr('class');
        switch(myClass){
            case 'small':
                fontsize=11;
                break;
            case 'normal':
                fontsize=12;
                break;
            case 'big':
                fontsize=13;
                break;
        }
        $("body").css("font-size", fontsize+"px");
        $.cookie('font-size', fontsize+'px');
        $.cookie('active', '.'+myClass);
    });

});