JavaScript+canvas实现七色板效果实例


Posted in Javascript onFebruary 18, 2016

本文实例讲述了JavaScript+canvas实现七色板效果。分享给大家供大家参考,具体如下:

效果图如下:

JavaScript+canvas实现七色板效果实例

html:

<canvas id="canvas" class="canvas" width="600" height="600"></canvas>

css:

html,body{margin: 0;padding: 0}
.canvas{display: block; margin-left:auto;margin-right:auto;margin-top: 50px;}

javascript:

var disk = [
    {
      area:[{x:0,y:0},{x:600,y:0},{x:300,y:300}],
      color:"#CBF263"
    },
    {
      area:[{x:0,y:0},{x:0,y:600},{x:300,y:300}],
      color:"#5CB6D0"
    },
    {
      area:[{x:0,y:600},{x:300,y:600},{x:150,y:450}],
      color:"#FE9CCD"
    },
    {
      area:[{x:150,y:450},{x:300,y:300},{x:450,y:450},{x:300,y:600}],
      color:"#A696C3"
    },
    {
      area:[{x:300,y:600},{x:600,y:600},{x:600,y:300}],
      color:"#FBC421"
    },
    {
      area:[{x:600,y:300},{x:600,y:0},{x:450,y:150},{x:450,y:450}],
      color:"#FF5061"
    },
    {
      area:[{x:450,y:450},{x:450,y:150},{x:300,y:300}],
      color:"#FDEA11"
    }
]
window.onload = function(){
    var canvasDom = document.getElementById("canvas");
    var ctx = canvasDom.getContext("2d");
    drawDisk(disk,ctx)
}
function drawDisk(disk,ctx){
    for(var i = 0;i<disk.length;i++){
      ctx.beginPath();
      ctx.moveTo(disk[i].area[0].x,disk[i].area[0].y);
      for(var j = 1;j<disk[i]["area"].length;j++){
        ctx.lineTo(disk[i].area[j].x,disk[i].area[j].y);
      }
      ctx.closePath();
      ctx.fillStyle = disk[i]["color"];
      ctx.fill();
    }
}

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

Javascript 相关文章推荐
jquery实现的一个导航滚动效果具体代码
May 27 Javascript
JavaScript实现网站访问次数统计代码
Aug 12 Javascript
js简单判断flash是否加载完成的方法
Jun 21 Javascript
javascript输出AscII码扩展集中的字符方法
Dec 26 Javascript
Vue指令的钩子函数使用方法
Mar 20 Javascript
angularjs路由传值$routeParams详解
Sep 05 Javascript
Vue插值、表达式、分隔符、指令知识小结
Oct 12 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
Jan 17 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
Feb 20 Javascript
微信小程序实现选择地址省市区三级联动
Jun 21 Javascript
解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题
Sep 02 Javascript
js制作提示框插件
Dec 24 Javascript
javascript结合Flexbox简单实现滑动拼图游戏
Feb 18 #Javascript
Angular发布1.5正式版,专注于向Angular 2的过渡
Feb 18 #Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 #Javascript
javascript每日必学之条件分支
Feb 17 #Javascript
JavaScipt中栈的实现方法
Feb 17 #Javascript
Bootstrap入门书籍之(五)导航条、分页导航
Feb 17 #Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
Feb 17 #Javascript
You might like
Zend framework处理一个http请求的流程分析
2010/02/08 PHP
php多线程并发实现方法
2016/09/30 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
php 读取文件夹下所有图片、文件的实例
2018/10/17 PHP
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
JavaScript页面刷新与弹出窗口问题的解决方法
2010/03/02 Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
2013/04/22 Javascript
jquery indexOf使用方法
2013/08/19 Javascript
javascript跨浏览器的属性判断方法
2014/03/16 Javascript
JavaScript动态改变表格单元格内容的方法
2015/03/30 Javascript
jQuery实现的多滑动门,多选项卡效果代码
2016/03/28 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
angularJS+requireJS实现controller及directive的按需加载示例
2017/02/20 Javascript
使用JQ完成表格隔行换色的简单实例
2017/08/25 Javascript
微信小程序自定义toast实现方法详解【附demo源码下载】
2017/11/28 Javascript
推荐一个基于Node.js的表单验证库
2019/02/15 Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
2020/05/23 Javascript
vue实现导航菜单和编辑文本的示例代码
2020/07/04 Javascript
vuex 多模块时 模块内部的mutation和action的调用方式
2020/07/24 Javascript
JavaScript实现页面高亮操作提示和蒙板
2021/01/04 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
Python 自动补全(vim)
2014/11/30 Python
python 3.6.2 安装配置方法图文教程
2018/09/18 Python
python异步实现定时任务和周期任务的方法
2019/06/29 Python
python通过opencv实现图片裁剪原理解析
2020/01/19 Python
python selenium自动化测试框架搭建的方法步骤
2020/06/14 Python
使用Python防止SQL注入攻击的实现示例
2020/05/21 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
BONIA波尼亚新加坡官网:皮革手袋,鞋类和配件
2016/08/25 全球购物
凯特王妃父母建立的派对用品网站:Party Pieces
2017/05/28 全球购物
和解协议书
2014/04/16 职场文书
预备党员公开承诺书
2014/05/28 职场文书
英语教育专业自荐信
2014/05/29 职场文书
2015年施工员工作总结范文
2015/04/20 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技