效果知识点:
css3画气球, 自定义属性运用,随机阵列, DOM元素操作,高级回调函数与参数复传,动态布局,鼠标事件,定时器运用,CSS3新增样式等。
css代码如下:
<style> {margin:0;padding:0;} body{background:#434343;overflow:hidden} .balloon{ position:absolute; left:0; top:0; margin:auto; width:160px; height:160px; 圆角: 左上 右上 右下 左下 / css3旋转 顺时针旋转45度 / background:#faf9f9; x轴的位置 y轴的位置 影子扩散程度 模糊度 颜色 / } .balloon:after{ 伪元素的内容 / display:block; position:absolute;
因为气球是旋转的 现在的正下方其实是右下角*/
right:0px; width:0px; height:0px; border:8px solid #dbbdbd; border-top-color:transparent; border-bottom-color:transparent; border-left-color:transparent; transform:rotate(45deg); border-radius:16px; } #wrap{ width:200px; height:200px; background:red; } </style>
javascript代码如下:
<script> var num = 10; // 声明遍历num 为div的数量 //var oBody = document.querySelector('body'); //h5 api 获取元素的方法 var oBody=document.documentElement || document.body; //body获取兼容性写法 var wW=window.innerWidth; //获取浏览器窗口的宽度 var wH=window.innerHeight; //获取浏览器窗口高度 var timer=null; //初始化定时器变量 init(num); function init(num){ for(var i=0;i<num;i++){ //for循环 循环加工厂 var randomL=Math.random()*wW; // 随机left范围 randomL=Math.min(wW-160,randomL); //规范left位置 var balloon = document.createElement('div'); //用js生成标签 balloon.className='balloon'; //给创建的div元素设置类名 balloon.style.left=randomL+'px'; //改变元素的样式中的left的值 balloon.style.top=wH+'px'; balloon.speed=Math.random()*5+1; //自定义属性 创建元素的时候添加 oBody.appendChild(balloon); //body中添加 元素对象 } } timer=setInterval(function(){ var oBall=document.querySelectorAll('.balloon');//获取页面所有的气球 for(var i=0,len=oBall.length;i<len;i++){ oBall[i].style.top = oBall[i].offsetTop-oBall[i].speed+'px'; oBall[i].onclick=function(){ //谁 触发了什么 谁做了什么事情 crash(this,function(xxx){ clearInterval(xxx.timer); //清除动画定时器 xxx.parentNode.removeChild(xxx); }); //this.parentNode.removeChild(this); init(1); } } },30); function crash(ele,cb){ //被点击之后撒气效果 ele.timeouter=setTimeout(function(){ cb&&cb(ele); },500) ele.timer=setInterval(function(){ ele.speed++; //加速度自增 ele.style.top=ele.offsetTop-ele.speed+'px'; //加速逃离 ele.style.width=ele.offsetWidth-10+'px'; //宽度减少 ele.style.height=ele.offsetHeight-10+'px'; //高度减少 },30) } </script>
总结
以上所述是小编给大家介绍的javascript+css3开发打气球小游戏完整代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
标签:
js,打气球小游戏代码
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“javascript+css3开发打气球小游戏完整代码”评论...
更新动态
2024年11月13日
2024年11月13日
- 《忆蚀》Subliminal:揭秘后室之谜,路知行献声Weplay文化展
- 那英《征服NEWXRCD台湾版》日本压制[WAV+CUE]
- 群星《金曲百分百上》3CD(香港版)[WAV+CUE]
- 刘欢《雨中的树(新歌加精选)2CD》德国HD24K金碟[WAV+CUE]
- 郑源 《世间情歌》6N纯银SQCD[WAV+CUE][1G]
- 群星《粤潮2HQII》头版限量编号[低速原抓WAV+CUE][991M]
- 群星《2023好听新歌21》十倍音质 U盘音乐[WAV分轨][1G]
- 《热血传奇》双11感恩回馈 超值狂欢30天
- 原神5.2版本活动汇总 5.2版本活动有哪些
- 张敬轩.2010-NO.ELEVEN【环球】【WAV+CUE】
- 黄丽玲.2006-失恋无罪【艾回】【WAV+CUE】
- 阿达娃.2024-Laluna【W8VES】【FLAC分轨】
- 宝可梦大集结段位等级划分表大全 大集结段位一览
- 龙腾世纪影障守护者工坊与装备如何升级 工坊与装备升级说明
- 龙腾世纪影障守护者全成就攻略分享 龙腾世纪4全成就列表一览