-2

我对网页设计非常陌生,并且在理解以下 jQuery 代码方面遇到了困难。

在我的 index.html 页面上,我有两个链接,一个叫小,一个叫大。

function change_size(element,size){
    var current = parseInt(element.css('font-size'));
    if(size =='smaller'){
        var new_size = current - 2;
    } else if (size=='bigger'){
        var new_size = current + 2;
    }

    element.css('font-size', new_size + 'px');
}

$('#smaller').click(function(){
    change_size($('p') 'Smaller'); /// function call 
});
$('#bigger').click(function(){
    change_size($('p') 'bigger');
});

element.css()第一个函数末尾的行是否添加font-sizenew_size然后附加“px”?

4

2 回答 2

1

您的代码创建了一个函数,该函数change_size接收 1 个或多个 jQuery 对象(在本例中为任何匹配项$('p')),并且根据传递给函数的字符串(或Smallerbigger),它将更改字体大小。$('#smaller')通过单击元素或触发该功能$('#bigger')。还有什么parseInt()是解析字符串参数并返回一个整数,您可以在 MDN 上找到更多信息

最后,该功能可以优化为:

function change_size(element,size){
    var dif;
    if(size =='smaller'){
        dif = -2;
    } else if (size=='bigger'){
        dif = 2;
    }
    element.css('font-size','+='+dif);
}
于 2013-07-03T16:03:08.050 回答
0

parseInt用于将字符串值转换(转换)为整数。

第一个 If 语句检查传递给 Size 变量的内容。

element.css('font-size'正在访问元素的 font-size css 属性。如果你给函数element.css传递1个参数,它会返回属性值,如果你传递两个参数,它会设置值。

$('#smaller')用于获取 id 较小的元素的引用,并且 .click 在单击时附加功能

转到 JQuery 教程以获得更好的理解。

于 2013-07-03T16:00:16.477 回答