工作总结20151209
2015-12-09 17:55
295 查看
1.解决了昨天留下的不能读取数组长度的问题
2.对倒计时项目的性能优化
由于彩球是储存在数组中的,随着运行,数组的长度会越来越长,耗费了内存,为了解决这个问题,需要将已跑出画布外的彩球删除掉,删除画布外元素的方法如下
重新定义一个变量cnt,每次循环+1,满足条件的i>=cnt,当元素在画布内时,将其挤到数组前面,这样, 这样cnt到之后的元素都在画布外,可以被删除,当需要控制画布内元素数量时,可以用cnt与该值比较,取最小值。
屏幕的自适应问题
在window.onload中重新给变量赋值,使其随实际屏幕大小自适应。
3.看了《canvas绘图详解》,尝试绘制星空,出现了一个小问题,如何使绘制的星星不重叠。
2.对倒计时项目的性能优化
由于彩球是储存在数组中的,随着运行,数组的长度会越来越长,耗费了内存,为了解决这个问题,需要将已跑出画布外的彩球删除掉,删除画布外元素的方法如下
var cnt = 0; for (var i = 0; i < balls.length; i++) { if(balls[i].x + R > 0 && balls[i].x - R < WINDOW_WIDTH){ balls[cnt++] = balls[i];//i>cnt,画布内的被挤在数组前面 } } while(balls.length > Math.min(300,cnt)){ balls.pop(); }
重新定义一个变量cnt,每次循环+1,满足条件的i>=cnt,当元素在画布内时,将其挤到数组前面,这样, 这样cnt到之后的元素都在画布外,可以被删除,当需要控制画布内元素数量时,可以用cnt与该值比较,取最小值。
屏幕的自适应问题
WINDOW_WIDTH = document.body.clientWidth; WINDOW_HEIGHT = document.body.clientHeight; MARGIN_LEFT = Math.round(WINDOW_WIDTH/10); R = Math.round(WINDOW_WIDTH*4/5/108)-1; MARGIN_TOP = Math.round(WINDOW_HEIGHT/5);
在window.onload中重新给变量赋值,使其随实际屏幕大小自适应。
3.看了《canvas绘图详解》,尝试绘制星空,出现了一个小问题,如何使绘制的星星不重叠。
相关文章推荐
- android - open failed: EROFS (Read-only file system)
- zip,jar,tar.gz无需解压读取文件内容
- iOS封装静态库,也就是.a文件
- TSql Merge On子句和When not matched 语义理解
- Excel中如何提取字符串中的数字
- Eclipse中Maven工程缺少Maven Dependencies
- yun install gcc 报错 Loaded plugins: fastestmirror, refresh-packagekit, security
- 静态库与动态库介绍(.a库资源处理需验证补充)
- 我的Android进阶之旅------>android Button上面的英文字符串自动大写的问题解决
- Cocos2D-Android-1之源码详解:6.ClickAndMoveTest
- 直接操作USRP属性树
- IIS日志文件清理
- Highcharts candlestick(K线图)案例
- matlab 实践程序5——批量将图片转移文件夹
- C#的Task多线程编程
- git 命令
- Nginx 安装
- 文件和参数一起上传到服务器
- Swift - 加载XIB 文件
- LAMP LAMP环境搭建【rpm】+ 实例应用