2012-01-02 39 views
13

Ví dụ: tôi muốn thêm 20px vào <div id='example'></div>, hiện tại là 20px.Làm cách nào để thêm chiều cao cho chiều cao hiện tại?

Tôi có thể nhận được chiều cao hiện tại và thêm 20px và nhập nó làm chiều cao mới, nhưng tôi muốn tìm hiểu xem có cách nào tốt hơn có thể hoạt động như một toán tử += hay không.

+1

Tại sao không chỉ cần sử dụng Toán tử '+ ='? – Purag

Trả lời

17

Bạn có thể vượt qua một hàm thành height() có chiều cao hiện tại của phần tử như một cuộc tranh cãi và return của hàm sẽ là tầm cao mới:

$('#example').height(function (index, height) { 
    return (height + 20); 
}); 

Đây là một bản demo: http://jsfiddle.net/grajh/

Documents: http://api.jquery.com/height/

+2

+1 mã bị cô lập đẹp. – andlrc

1

Bằng cách đó:

$('#example').height($('#example').height() + 20); 
22

Có rất nhiều cách để làm điều đó: http://jsperf.com/jquery-height-vs-css-height

jsbin.com/utaduy

$('#example').css("height", "+=20px"); 

$('#example').height($("#example").height() + 20); 
+0

$ ('# example'). Css ("height", "+ = 20"); Không làm việc cho tôi! – whamsicore

+0

Vẫn không hoạt động vì một số lý do. Tôi mặc dù đó là bởi vì yếu tố của tôi không có một tài sản chiều cao được thiết lập để bắt đầu. Tuy nhiên, khi tôi thiết lập một và thử lại, nó vẫn không hoạt động. – whamsicore

Các vấn đề liên quan