JavaScript+html5 canvas制作的圆中圆效果实例


Posted in Javascript onJanuary 27, 2016

本文实例讲述了JavaScript+html5 canvas制作的圆中圆效果。分享给大家供大家参考,具体如下:

运行效果截图如下:

JavaScript+html5 canvas制作的圆中圆效果实例

具体代码如下:

<!DOCTYPE html>
<html>
 <head>
  <title>demo</title>
  <style type="text/css">
   #canvas {
    background:#F2F2F2; height:500px; height:500px; margin-top:100px; margin-left:200px;
   }
  </style>
 </head>
 <body>
  <canvas id="canvas" width="500px" height="500px" ></canvas>
 </body>
 <script type="text/javascript">
  (function() {
    var dyl = {};
    dyl.getDom = function(id) {
        return document.getElementById(id);
    }
    dyl.getContext = function(canvasID) {
        var canvas = this.getDom(canvasID);
        if(!canvas) {
            return null;
        }
        return canvas.getContext("2d");
    }
    if(!window.dyl) {
        window.dyl = dyl;
    }
  })();
  cache = {};
  cache.context = dyl.getContext('canvas');
  // 每个圈的圆个数控制
  cache.scaleNmb = 6;
  cache.createColor = function() {
   var color = "rgb(";
   color += Math.round(Math.random()*255);
   color += ",";
   color += Math.round(Math.random()*255);
   color += ",";
   color += Math.round(Math.random()*255);
   color += ")";
   return color;
  };
  cache.draw = function() {
   cache.context.fillRect(-10, -10, 20, 20);
   for(var i=1; i<10; i++) { 
    cache.context.save();
    for(var j=0; j<cache.scaleNmb*i; j++) {
     cache.context.rotate(Math.PI*2/(cache.scaleNmb*i));
     cache.context.fillStyle = cache.createColor();
     cache.context.beginPath();
     cache.context.arc(0, 20*i, 5, 0,Math.PI*2, true);
     cache.context.closePath();
     cache.context.fill();
    }
    cache.context.restore();
   }
  };
  cache.init = function() {
   cache.context.translate(250, 250);
   cache.draw();
  };
  cache.init();
 </script>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript中this关键字使用方法详解
Mar 08 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
May 07 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 Javascript
javascript基于prototype实现类似OOP继承的方法
Dec 16 Javascript
jQuery ajax分页插件实例代码
Jan 27 Javascript
AngularJs Understanding the Model Component
Sep 02 Javascript
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
Node.js静态服务器的实现方法
Feb 28 Javascript
js动态设置select下拉菜单的默认选中项实例
Aug 21 Javascript
基于Angularjs-router动态改变Title值的问题
Aug 30 Javascript
js事件on动态绑定数据,绑定多个事件的方法
Sep 15 Javascript
vue观察模式浅析
Sep 25 Javascript
jQuery ajax分页插件实例代码
Jan 27 #Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 #Javascript
jquery ajax分页插件的简单实现
Jan 27 #Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
Jan 27 #Javascript
APP中javascript+css3实现下拉刷新效果
Jan 27 #Javascript
jQuery EasyUi实战教程之布局篇
Jan 26 #Javascript
jQuery Easyui实现左右布局
Jan 26 #Javascript
You might like
谏山创故乡大分县日田市水坝将设立《进击的巨人》立艾伦、三笠以及阿尔敏的铜像!
2020/03/06 日漫
PHILIPS D1835/D1875的电路分析与打理
2021/03/02 无线电
PHP XML数据解析代码
2010/05/26 PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
2016/03/15 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
php array_walk 对数组中的每个元素应用用户自定义函数详解
2016/11/18 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
获取焦点时,利用js定时器设定时间执行动作
2010/04/02 Javascript
jquery下jstree简单应用 - v1.0
2011/04/14 Javascript
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
2013/05/17 Javascript
Jquery解析json数据详解
2013/12/26 Javascript
js实现的二级横向菜单条实例
2015/08/22 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
2015/08/24 Javascript
Javascript原型链的原理详解
2016/01/05 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
2016/04/18 Javascript
jQuery图片左右滚动代码 有左右按钮实例
2016/06/20 Javascript
node.js实现博客小爬虫的实例代码
2016/10/08 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
Python数据结构之Array用法实例
2014/10/09 Python
python2.7到3.x迁移指南
2018/02/01 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
python 中文件输入输出及os模块对文件系统的操作方法
2018/08/27 Python
Python面向对象之类的定义与继承用法示例
2019/01/14 Python
Python设计模式之模板方法模式实例详解
2019/01/17 Python
如何解决安装python3.6.1失败
2020/07/01 Python
html5触摸事件判断滑动方向的实现
2018/06/05 HTML / CSS
HTML5学习笔记之html5与传统html区别
2016/01/06 HTML / CSS
Molton Brown美国官网:奢华美容、香水、沐浴和身体护理
2020/09/02 全球购物
母校寄语大全
2014/04/10 职场文书
中华美德颂演讲稿
2014/05/20 职场文书
教师反腐倡廉演讲稿
2014/09/03 职场文书
优秀教师事迹材料
2014/12/15 职场文书
法定授权委托证明书
2015/06/18 职场文书
升学宴来宾致辞
2015/07/27 职场文书
公司周年庆寄语
2019/06/21 职场文书