天天看点

HTML5画布颜色点击修改形状

大家直接看代码吧,感觉不错吧。

<!DOCTYPE HTML>
<html>
  <head>
    <style>
      body {
      margin: 0px;
      padding: 0px;
      }
      canvas {
    </style>
  </head>
  <body>
    <div id="container"></div>
    <script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.7.4.min.js"></script>
    <script defer="defer">
      var stage = new Kinetic.Stage({
        container: 'container',
        width: 578,
        height: 200
      });
      var layer = new Kinetic.Layer();

      var triangle = new Kinetic.RegularPolygon({
        x: 190,
        y: 120,
        sides: 3,
        radius: 80,
        fill: '#00D2FF',
        stroke: 'black',
        strokeWidth: 4
      });

      triangle.on('click', function() {
        var fill = this.getFill() == 'yellow' ? '#00D2FF' : 'yellow';
        this.setFill(fill);
        layer.draw();
      });

      layer.add(triangle);

      var circle = new Kinetic.Circle({
        x: 380,
        y: stage.getHeight() / 2,
        radius: 70,
        fill: 'red',
        stroke: 'black',
        strokeWidth: 4
      });

      circle.on('click', function() {
        var fill = this.getFill() == 'red' ? '#00d00f' : 'red';
        this.setFill(fill);
        layer.draw();
      });

      layer.add(circle);
      stage.add(layer);

    </script>
  </body>
</html>