Tôi đang cố gắng bắt chước một hiệu ứng thường thấy trên thiết bị di động nơi bạn có bảng điều khiển và khi bạn nhấp vào nút, nó quay xung quanh và phía bên kia nó có một số thông tin khác.jquery làm thế nào để làm một hiệu ứng lật?
tôi thấy một số mã mà usses chuyển css và here is an example
js
$('#signup').on('click', function(e) {
e.preventDefault();
document.getElementById('side-2').className = 'flip flip-side-1';
document.getElementById('side-1').className = 'flip flip-side-2';
});
$('#create').on('click', function(e) {
e.preventDefault();
document.getElementById('side-2').className = 'flip';
document.getElementById('side-1').className = 'flip';
});
vấn đề với ví dụ này là nếu tôi chuyển đổi javascript vào jquery nó stopps làm việc:
từ:
document.getElementById('side-2').className = 'flip flip-side-1';
to
$('#side-2').addClass('flip flip-side-1');
Ngoài ra, tôi cũng không chắc chắn nếu chưa có plugin jquery thực hiện điều này một cách tốt hơn.
Bất kỳ ý tưởng nào?
một số mã khác. html
<div id="side-1" class="flip">
<a id="signup" href="#">sign up</a>
</div>
<div id="side-2" class="flip">
<a id="create" href="#">create</a>
</div>
css
.flip {
backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-o-backface-visibility: hidden;
-webkit-backface-visibility: hidden;
border: 1px solid black;
transform-origin: 50% 50% 0px;
-moz-transform-origin: 50% 50% 0px;
-ms-transform-origin: 50% 50% 0px;
-o-transform-origin: 50% 50% 0px;
-webkit-transform-origin: 50% 50% 0px;
transition: all 1s;
-moz-transition: all 1s;
-ms-transition: all 1s;
-o-transition: all 1s;
-webkit-transition: all 1s;
}
#side-1 {
transform: rotateY(0deg);
-moz-transform: rotateY(0deg);
-ms-transform: rotateY(0deg);
-o-transform: rotateY(0deg);
-webkit-transform: rotateY(0deg);
}
#side-2 {
transform: rotateY(180deg);
-moz-transform: rotateY(180deg);
-ms-transform: rotateY(180deg);
-o-transform: rotateY(180deg);
-webkit-transform: rotateY(180deg);
}
.flip-side-1 {
transform: rotateY(0deg) !important;
-moz-transform: rotateY(0deg) !important;
-ms-transform: rotateY(0deg) !important;
-o-transform: rotateY(0deg) !important;
-webkit-transform: rotateY(0deg) !important;
}
.flip-side-2 {
transform: rotateY(180deg) !important;
-moz-transform: rotateY(180deg) !important;
-ms-transform: rotateY(180deg) !important;
-o-transform: rotateY(180deg) !important;
-webkit-transform: rotateY(180deg) !important;
}
Cảm ơn! Plugin tuyệt vời. Đã đánh dấu trang! –
Tôi thứ hai, thư viện này rất dễ sử dụng và rất nhanh. – andrewpthorp
Tôi chưa bao giờ thích cách nội dung biến mất khi lật xảy ra với plugin này. Đây là một kịch bản tốt để làm điều gì đó dễ dàng hỗ trợ nhiều trình duyệt. Nhưng nếu bạn muốn nhận được một số chất lượng trong đó, hãy kiểm tra các chuyển đổi CSS và chuyển tiếp để thực hiện những việc như sau: http://css3playground.com/flip-card.php – Jasper