HTML5知识:KineticJS里面的Canvas tango形状!
来源:互联网 发布:djvu阅读器 知乎 编辑:程序博客网 时间:2024/05/16 18:36
代码说明:拖拽形状和按“tango”按钮使形状移动。刷新页面生成新的随机形状。
其它的话也不多说啦,大家可能等着看代码啦,其实,觉得有点难哦,我也在学习哦。呵呵。
<!DOCTYPE HTML><html> <head> <style> body { margin: 0px; padding: 0px; } canvas { border: 1px solid #9C9898; } #tango { position: absolute; top: 10px; left: 10px; padding: 10px; } #container { background-image: url("http://www.html5canvastutorials.com/demos/assets/blue-background.jpg"); display: inline-block; overflow: hidden; height: 365px; width: 580px; } </style> </head> <body onmousedown="return false;"> <div id="container"></div> <input type="button" id="tango" value="Tango!"> <script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.7.2.min.js"></script> <script defer="defer"> var colors = ['red', 'orange', 'yellow', 'green', 'blue', 'purple']; function getRandomColor() { return colors[Math.round(Math.random() * 5)]; } function tango(layer) { var color = Kinetic.Util.getRGB(getRandomColor()); for(var n = 0; n < layer.getChildren().length; n++) { var shape = layer.getChildren()[n]; var stage = shape.getStage(); var radius = Math.random() * 100 + 20; new Kinetic.Tween({ node: shape, duration: 1, x: Math.random() * stage.getWidth(), y: Math.random() * stage.getHeight(), rotation: Math.random() * Math.PI * 2, radius: radius, opacity: (radius - 20) / 100, easing: Kinetic.Easings.EaseInOut, fillR: color.r, fillG: color.g, fillB: color.b }).play(); } } var stage = new Kinetic.Stage({ container: 'container', width: 578, height: 363 }); var layer = new Kinetic.Layer(); for(var n = 0; n < 10; n++) { var radius = Math.random() * 100 + 20; var shape = new Kinetic.RegularPolygon({ x: Math.random() * stage.getWidth(), y: Math.random() * stage.getHeight(), sides: Math.ceil(Math.random() * 5 + 3), radius: radius, fill: getRandomColor(), opacity: (radius - 20) / 100, draggable: true }); layer.add(shape); } stage.add(layer); document.getElementById('tango').addEventListener('click', function() { tango(layer); }, false); </script> </body></html>
- HTML5知识:KineticJS里面的Canvas tango形状!
- HTML5知识:Canvas简单形状与KineticJS的Easings类!
- HTML5里面的知识:Canvas的KineticJS多边形教程
- HTML5知识:KineticJS里面Canvas形象的事件!
- HTML5里面的知识:Canvas简单与KineticJS滚动条!
- HTML5 Canvas选择Id与KineticJS形状,html5里面的一个难点!
- html5知识:Canvas的KineticJS事件委托!
- HTML5里面的一个知识:Canvas二层与KineticJS完成事件!
- HTML5里面的Canvas听或不听KineticJS事件
- HTML5新的东西:Canvas里面KineticJS补间动画教程!
- HTML5里面的东西:Canvas KineticJS规模动画教程!
- HTML5里面,关于Canvas的KineticJS圆教程!
- HTML5的一些知识:Canvas KineticJS旋转动画教程
- 推荐的html5知识:Canvas KineticJS图片教程!
- HTML5 Canvas选择形状的名字与KineticJS,我喜欢的一个知识点!
- HTML5分享:Canvas多点触控规模与KineticJS形状
- HTML5画布的形状与kineticjs缓存
- 推荐一个html5 canvas的插件kineticjs
- 字符串的全排列和组合算法
- Oracle 临时表空间的增删改查
- Codeforces Round #201 (Div. 2)
- cocos2dx 以box2d做个小车test
- struts2+easyui+datagrid的使用方法
- HTML5知识:KineticJS里面的Canvas tango形状!
- Java操作MySQL应用实例
- JQuery blockUI 的使用方法
- 读入两个小于100的正整数A和B,计算A+B.A和B的每一位数字由对应的英文单词给出.
- 用我自己的理解内存映射文件
- 百度面试
- ubantu 命令行 sh 无法找到 /bin/java
- 用poll 实现并发服务器
- STL set 用法之 —— 自定义结构体