网页刮刮卡效果

【HTML+Javascript源码-cv即可】

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>刮刮卡效果</title>
  </head>
  <style>
    body {
      margin: 0;
    }

    #canvas {
      position: absolute;
      left: 0;
      cursor: pointer;
    }
  </style>

  <body>
    <img src="img/01.png" />
    <canvas id="canvas" width="700" height="300"> </canvas>
  </body>

</html>

<script>
  function draw() {
    var canvas = document.getElementById('canvas');
    if (!canvas.getContext) return;
    var ctx = canvas.getContext('2d');
    //设置一个颜色 覆盖在这个图片上
    ctx.beginPath();
    ctx.fillStyle = "gray";
    ctx.fillRect(0, 0, canvas.width, canvas.height);
    //属性方法
    ctx.globalCompositeOperation = 'destination-out';
    //设置画笔为圆形
    ctx.lineCap = 'round';
    //设置画笔宽度
    ctx.lineWidth = 40;
    //当鼠标按下的时候
    canvas.onmousedown = function(e) {
      console.log("按下");
      //获取鼠标位置
      var x = e.clientX;
      var y = e.clientY;
      //设置鼠标位置为起始点
      ctx.moveTo(x, y);
      moves();
    }

    //当鼠标移动时候
    function moves() {
      canvas.onmousemove = function(e) {
        console.log("移动");
        var x = e.clientX;
        var y = e.clientY;
        //开始画
        ctx.lineTo(x, y);
        //描绘出路径
        ctx.stroke();
      }
    }

    //当鼠标抬起时 去除移动事件
    canvas.onmouseup = function(e) {
      console.log("抬起");
      canvas.onmousemove = "";
    }
  }
  draw();
</script>

所用图片

图片

Canvas是HTML5中的一个元素,通过在网页上创建一个画布,开发者可以使用JavaScript在其中绘制各种图形、文本和图像。Canvas提供了丰富的API,使开发者可以实现各种复杂的视觉效果和交互功能。相比于传统的基于图片的网页设计,Canvas可以实现更加动态和个性化的内容展示,为用户带来更加丰富的浏览体验。开发者可以利用Canvas创建交互式的游戏、动画、数据可视化和图表等内容,从而吸引用户的注意力并提升用户体验。Canvas的绘制是基于像素级别的操作,因此在处理大量细粒度图形元素时表现更为出色。另外,Canvas的性能也相对较高,适合需要频繁更新和绘制的应用场景。总的来说,Canvas为开发者提供了一个强大而灵活的工具,帮助他们创造出各种引人入胜的视觉效果和互动体验,丰富了网页内容的表现形式,使网页更具吸引力和趣味性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值