2011-03-19 69 views
1

目前,我正在改變使用jQuery像不同的元素屬性的重複:重新分配屬性,無需原值

// increase original value with 20%. 
$('#view_port .scroll_container').width(1.2 * $('#view_port .scroll_container').width()); 

// increase orignal value with 10 * padding value. 
$('#view_port .scroll_container').width(10 * padding + $('#view_port .scroll_container').width() + 5 * padding); 

在我知道我能做些什麼大多數編程語言像

width *= 1.2; 

width += padding* 10; 

jQuery/JavaScript是否提供類似的構造來輕鬆更改屬性值?

回答

2

因爲jQuery的1.4.1,你可以通過一個函數來width(),它得到的電流值作爲第二個參數:

$('#view_port .scroll_container').width(function(i, width) { 
    return 1.2 * width; 
}); 
2

做在jQuery是一個函數傳遞給width()最接近的方式:

$('#view_port .scroll_container').width(function(index, width) { 
    return 1.2 * width; 
}); 

或者:

$('#view_port .scroll_container').width(function(index, width) { 
    return 10 * padding + width + 5 * padding; 
});