Tôi đang cố gắng sử dụng chức năng hiệu ứng tích hợp của jQuery để tạo "ngăn kéo" trượt ra từ phía sau thanh điều hướng, đẩy nội dung bên dưới nó ra khỏi đường.jQuery slideDown so với jQuery UI .show ('slide')
Nếu tôi sử dụng $('#drawer').slideDown()
, nội dung sẽ bị đẩy ra khỏi đường nhưng nội dung không thực sự "trượt xuống". Đó là nhiều hơn của một lau để tiết lộ nội dung.
Nếu tôi sử dụng $('#drawer').show('slide',{direction:'up'})
, nội dung sẽ trượt xuống một cách chính xác, nhưng tất cả nội dung bên dưới phần tử nhảy ra khỏi đường trước khi hiệu ứng xảy ra.
Có cách nào để kết hợp tốt nhất của cả hai cách này để nhân rộng hiệu ứng tôi đang tìm kiếm: ngăn kéo trượt ra ngoài, đẩy nội dung bên dưới nó ra khỏi đường?
Tôi đã điều tra chức năng .animate()
của giao diện người dùng jQuery, nhưng tài liệu không hữu ích. Những nỗ lực thô lỗ của tôi để sử dụng nó đã bị thất bại.
Và, trong trường hợp có ai hỏi, xin lỗi, tôi không thể hiển thị một ví dụ, nhưng chúng tôi muốn nó hoạt động như các plugin jQuery Drawer:
http://lib.metatype.jp/jquery_drawer/sample.html
Nhưng plugin mà không làm hoàn toàn là những gì chúng ta cần, hoặc nếu không tôi chỉ sử dụng nó (không sử dụng danh sách có dấu đầu dòng hoặc nội dung AJAX). Tuy nhiên, hiệu ứng có những gì chúng tôi muốn.
UPDATE: Tôi cũng đã thử phần này của mã qua các plugin jQuery Drawer, nhưng nó không sinh động tại tất cả:
$('#drawer').css({ marginTop: $('#drawer').height() * -1 }).animate({ marginTop: 0 });
Để làm rõ, quá, điều này được gọi là trong vòng một hàm OpenDrawer()
rằng được gọi là như vậy:
$(document).ready(function() {
OpenDrawer();
});
Bởi vì theo mặc định nó sẽ tải khi tải trang.
Vâng, đây thực sự không phải là vấn đề của tôi. slideDown() hoạt động tốt, nhưng nó không thực sự "trượt". Đó là hiệu ứng "lau" nhiều hơn. Đây là tất cả tốt và tốt cho rất nhiều mục đích, nhưng tôi muốn nội dung xuất hiện để trượt xuống, không xuất hiện để được "tiết lộ". –
Liên kết mà bạn đã hiển thị (http://lib.metatype.jp/jquery_drawer/sample.html) đang sử dụng animate. Tôi sẽ đăng nó lên trên. – Metropolis
Đó là gần hơn, nhưng tôi nghĩ rằng đó là một phần sai của mã jQuery Drawer. Đó là để đóng bộ nạp khi nội dung AJAX đã được tải. Tôi đã thử vay một dòng trước đó trong mã (xem câu hỏi thay đổi), nhưng điều đó không làm việc cả. Tôi cảm thấy như tôi đang đi đúng hướng, nhưng điều này vẫn chưa thực sự gần gũi với công việc. –