利用JavaScript实现放鞭炮动画效果
短信预约 -IT技能 免费直播动态提醒
前言
谈及过年,最先让人想到的就是,噼里啪啦的鞭炮声,小时候到了春节,点上一根香,把红色的鞭炮从那一排子里解出几个,放在石头上,用香火点着捻子,只听“啪"的一声,鞭炮响了,鞭炮皮炸了一地,爽的不行;然而现在由于各种原因不能像小时候一样痛快的放鞭炮了,鞭炮就是过年的灵魂,过年要是不放点烟花爆竹,总感觉少了点年味,没意思透了。只能在网上来实现这个小小的心愿了,体验小时候路边放鞭炮的快乐时光。效果图如下:
制作思路
1)首先构建一串鞭炮
2)点炮,兔年这个任务就交给可爱的小兔吧
3)制作鞭炮爆炸效果
4)添加鞭炮音效
代码实现
构建鞭炮
首先准备一条竖线,作为这串鞭炮的总捻子。
然后沿着捻子在两边排放鞭炮,每个鞭炮的实现方式如下:
<div class="bp-item bp-right bg-delay1 bg-ani-name1" style="left: 127px;top:59.77230769230769px;">
<div class="bp-wrap">
<div class="bp" style="transform: scale(0.8) rotate(-19deg);">
<div class="top">
<i></i>
</div>
<div class="side up">
<i></i>
</div>
<div class="side down1">
<i></i>
</div>
<div class="side down2">
<i></i>
</div>
<div class="bottom foot">
</div>
<div class="text">
<div class="out">
<div class="mid">
<div class="in">
</div>
</div>
</div>
<span>新</span>
</div>
</div>
<div class="bang bang2">
</div>
</div>
</div>
安排小兔上场点火
兔年点炮动作就交给小兔吧!在上面加个按钮用来触发点炮动作。
$(".dear-joy").bind("click", function() {
$(this).removeClass("jump").addClass("dian");
setTimeout(function() {
f.trigger("bang") //触发鞭炮爆炸效果
}, 500);
$(".dear-joy2").addClass("fadeIn")
});
//鞭炮爆炸
f.bind("bang", function() {
var w = $(this).find(".bp-item");
w.each(function(y, z) {
setTimeout(function() {
$(z).addClass("on hold-forwards bp-fly")
}, (w.length - y + 4) * 150)
});
plays();//启声音
setTimeout(function() {
_audioDom.pause() //音频暂停
}, 6000);
});
爆炸效果
.hold-forwards {
-webkit-animation-fill-mode: forwards !important;
animation-fill-mode: forwards !important;
}
.on .bp {
-webkit-animation: easeOut .2s ease-in;
animation: easeOut .2s ease-in;
}
添加音频
没有声音的鞭炮是没有灵魂的。
<audio class="lazy" data-src="http://downsc.chinaz.net/Files/DownLoad/sound/huang/cd9/mp3/222.mp3" id="audio_box"></audio>
到此这篇关于利用JavaScript实现放鞭炮动画效果的文章就介绍到这了,更多相关JavaScript放鞭炮动画内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341