2012-06-06 63 views
7

Tôi có hai DIV: Một DIV thay đổi kích thước động dựa trên trình duyệt (thiết kế đáp ứng) và tôi muốn DIV khác sửa đổi chiều cao dựa trên chiều cao đầu tiên của DIV. Tôi nghĩ cách dễ nhất để làm điều này là sử dụng JQuery để tự động thay đổi chiều cao.JQuery: Thay đổi chiều cao dựa trên yếu tố khác

tôi thử như sau:

$('section#div2').css({height:$(this).css('height').replace($('section#div1 div.div1_container').height()+'px')}); 

Tuy nhiên, mã mà không hoạt động. Cũng không phải là các phiên bản khác nhau mà làm việc.

Câu hỏi của tôi là: Làm cách nào để thay thế một thuộc tính CSS đơn lẻ mà không thay đổi tất cả các thuộc tính cho một phần tử đã cho?

EDIT: Đây là cách DIV đầu tiên động được mã hóa ...

Đầu tiên DIV đầu tiên của container:

position: relative; 
padding-bottom: 50%; 
padding-top: 30px; height: 0; overflow: hidden; 
margin:0 0.7em 0 0.7em; 

Sau đó, các đối tượng bên trong container đó (có thể không có liên quan):

position:absolute; 
top:0; 
left:0; 
width:100%; 
height:100%; 

Trả lời

7
$('section#div2').css('height', $('section#div1').height()+'px'); 
+0

Tôi đã thử điều này và nó vẫn không hoạt động. Tôi sẽ cập nhật câu hỏi với mã động cho div đầu tiên trong trường hợp có bất kỳ tác động nào ... Về cơ bản, khi tôi thử mã bạn liệt kê, nó cũng là kết quả tương tự, không thay đổi độ cao khi trang được nạp vào. – Justin

+0

Đánh dấu html thực sự quan trọng hơn một chút. Tôi đã cập nhật jQuery với những gì tôi nghĩ rằng bạn đang cố gắng để làm, về cơ bản bạn muốn chiều cao của phần # div2 được giống như phần # div1 chính xác? –

+0

Có, nhưng điều đó vẫn không hoạt động. Tôi nghĩ rằng vấn đề có thể là cách thức mà DIV đầu tiên được mã hóa, vì chiều cao về mặt kỹ thuật là không. Nhưng, tôi đã cố gắng thiết lập nó bằng với DIV bên trong (đó là 100%) và nó vẫn không hoạt động ... Cảm ơn những ý tưởng cho đến nay! – Justin

2

Sử dụng này:

01.
$('section#div2').height($('section#div1').height()); 
+0

Tôi không chắc chắn ý của bạn là gì ... xin lỗi! – Justin

+0

Chỉ cần thử nó? Đây là các hàm chiều cao jquery đã đặt và nhận được chiều cao. Đó là tất cả những gì bạn cần. – Will

+0

Có, nhưng nó không tham khảo DIV đầu tiên, vì vậy làm thế nào nó sẽ có được chiều cao đó? Tôi đã thử nó và nó không làm gì cả. Ý của bạn là bao gồm điều này trong bộ chọn CSS của tôi ở trên một nơi nào đó? – Justin

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