zoukankan      html  css  js  c++  java
  • HTML5、canvas颜色拾取器

     效果图:

    代码:

    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8" />
        <title>canvas 颜色拾取器</title>
        <style>
            #canvas {
                border: 1px solid red;
            }
            #block {
                display: inline-block;
                width:50px;
                height: 50px;
                vertical-align: top;
                background-color: black;
            }
        </style>
    </head>
    <body>    
        <canvas id="canvas" width="400" height="400">你的浏览器不支持canvas</canvas>
        <span id="block"></span>
        <script>
            //获取id 
            var canvas = document.getElementById("canvas");
            var ctx = canvas.getContext("2d");
            //绘制填充颜色块 
            for(var i = 0; i < 16; i++) {
                for(var j = 0; j < 16; j++) {
                    // gba(255,255,0) --->gba(255,0,0)
                    ctx.fillStyle = "rgb("+(255 - j*16)+","+(255 - i*16)+",0)";
                    ctx.fillRect(i*25,j*25,25,25);
                }
            }
            // 显示获取的颜色
            var block = document.getElementById("block");
            // 点击利用imgDate获取rgb值
            canvas.onclick = function(e) {
                var e = e || window.event;
                //e.layerX,e.layerY相对于绑定事件对象canvas的坐标
                var x = e.layerX;
                var y = e.layerY;
                // console.log(e);
                var imgData = ctx.getImageData(x,y,1,1);
                var r = imgData.data[0];
                var g = imgData.data[1];
                var b = imgData.data[2];
                
                block.style.backgroundColor = "rgb("+r+","+g+","+b+")";
            }
        </script>
    </body>
    
    </html>

     

  • 相关阅读:
    页面跳转刷新
    表格表头绘制对角线(不固定表格宽高)
    发送邮件的工具类
    重写equals()和hashCode()
    设计模式--原型模式[转载]
    设计模式--外观模式
    设计模式--代理模式
    js处理json js递归
    MySQL锁详解
    开发一个微信小程序实例教程
  • 原文地址:https://www.cnblogs.com/CaktyRiven/p/5287774.html
Copyright © 2011-2022 走看看