2011-12-11 41 views
8

Snafu nhỏ lạ. Tôi đang sử dụng phương pháp .css() của jQuery để thay đổi kích thước của văn bản (câu chuyện dài; không, tôi không thể sử dụng truy vấn phương tiện) bằng cách sử dụng biến và tôi cần thêm em vào đó. Tôi không chắc cú pháp là vì có nhiều giá trị cho thay đổi CSS.Hàm jQuery .css() với các biến và nhiều giá trị

Để minh họa:

Điều này hoạt động hoàn hảo. Nó cho biết thêm em với giá trị tính toán của mình victore:

$('h1').css('font-size', victore + 'em'); 

này không:

$('h1').css({ 
    'font-size':victore + 'em', 
    'line-height':vignelli + 'em'; 
}); 

Các em cần dấu ngoặc kép ... nhưng như vậy không giá trị. Gói nó trong dấu ngoặc đã không làm việc

+2

Trên bản chỉnh sửa gần đây nhất của bạn, bạn cần xóa ';' sau 'em' cuối cùng. – ThinkingStiff

Trả lời

17

Bạn không nên có dấu ngoặc kép quanh toàn bộ điều:

$('h1').css({ 
    'font-size': victore + "em", 
    'color':'red' 
}); 
+0

. đã phạm sai lầm khi tôi sao chép qua mã của tôi. xem ở trên chỉnh sửa .. nó phá vỡ mã của tôi. – technopeasant

+1

Như đã chỉ ra trong các ý kiến, bây giờ bạn có một dấu chấm phẩy mà không nên có. –

0

Giá trị font-size là cần thiết để trở thành một chuỗi, nhưng chuỗi có thể được kết quả của một biểu thức, trong trường hợp của bạn victore + 'em' sẽ dẫn đến chuỗi thích hợp.

$('h1').css({ 
    'font-size': victore + 'em', 
    'color': 'red' 
}); 
0

Đây là fiddle.

$('h1').css({ 
    'font-size':victore + "em", 
    'color':'red' 
}); 
+0

Tôi hiểu rồi. Tôi đã nhầm lẫn khi tôi sao chép mã trên .. Vui lòng xem bài đăng đã chỉnh sửa để biết ví dụ khác về những gì không hoạt động. Đã thử nó trong fiddle của bạn và không có con xúc xắc – technopeasant

+0

@technopeasant, xem [cập nhật fiddle] (http://jsfiddle.net/sPEVs/1/). Tôi đã sử dụng pixel thay vì ems cho ví dụ. EDIT: Đây là một phiên bản với 'em': http://jsfiddle.net/sPEVs/2/ – FakeRainBrigand

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