2/9 này làm gì? Làm hiệu ứng “lá cờ bay trong gió” bằng JavaScript cực đơn giản
Giới thiệu
Chào anh em. Hôm nay mình xin chia sẻ về một hiệu ứng rất thú vị. Đó là Flying flag effect: Làm hiệu ứng lá cờ bay trong gió bằng JavaScript, HTML và CSS.
Bắt tay vào làm nào!
Cách làm hiệu ứng lá cờ bay trong gió bằng JavaScript
Mình sẽ demo trên http://jsfiddle.net cho anh em dễ theo dõi nhé.
Về phần HTML của effect rất đơn giản:
<div class='flag'> </div>
Còn đây là CSS:
.flag { width:300px; height:200px; margin:50px; } .flag-element { -webkit-animation:oscill 1s ease-in-out infinite alternate; -moz-animation:oscill 1s ease-in-out infinite alternate; -ms-animation:oscill 1s ease-in-out infinite alternate; animation:oscill 1s ease-in-out infinite alternate; background: url('http://i.imgur.com/8VSL8Ve.gif'); background-size: 300px 100%; position:relative; height:100%; width:1px; display:inline-block; box-shadow:0 1px grey, 0 -1px gray; } @-webkit-keyframes oscill { 0% { top: 5%; } 100% { top: -5%; } } @-moz-keyframes oscill { 0% { top: 5%; } 100% { top: -5%; } } @-ms-keyframes oscill { 0% { top: 5%; } 100% { top: -5%; } } @keyframes oscill { 0% { top: 5%; } 100% { top: -5%; } }
Cuối cùng, tuy ngắn nhưng rất quan trọng đó là JavaScript:
var h = $('.flag').width(); for(var i = 0; i < h; i++){ var flagElement = $("<div class='flag-element'>"); flagElement.css('background-position', -i + "px 0"); flagElement.css('-webkit-animation-delay', i * 10 + 'ms'); flagElement.css('-moz-animation-delay', i * 10 + 'ms'); flagElement.css('-ms-animation-delay', i * 10 + 'ms'); flagElement.css('animation-delay', i * 10 + 'ms'); $('.flag').append(flagElement); }
Và kết quả là:
Kết
Như vậy là mình đã hướng dẫn cách làm hiệu ứng là cờ bay trong gió bằng JavaScript. Rất dễ phải không các bạn.
Chúc các bạn thành công và vui vẻ trong ngày Quốc Khánh nhé !!
Đừng bỏ lỡ những bài viết hay liên quan:
Xem thêm việc làm JavaScript trên TopDev
- H Học lập trình có nên mua Macbook? TOP 5 MacBook cho lập trình viên
- N Nên build cấu hình PC cho lập trình viên như thế nào?
- T TOP 10+ laptop cho lập trình viên dưới 20 triệu
- H Học lập trình nên mua laptop hay PC (máy tính để bàn)?
- L Laptop cho lập trình viên giá rẻ dưới 10 triệu
- T Top 6 laptop học CNTT dưới 15 triệu đáng mua nhất
- 3 30 laptop lập trình tốt nhất cho lập trình viên (Phần cuối)
- 3 30 laptop lập trình tốt nhất cho lập trình viên (Phần 2)
- 3 30 laptop lập trình tốt nhất cho lập trình viên (Phần 1)
- S Sinh viên CNTT làm thế nào để học tốt ở trường đại học?