JavaScript与Canvas结合实现简易画板

作者:像素漫游时间:2026-10-24 05:02:22浏览:634

本文介绍了如何利用HTML5 Canvas元素结合JavaScript实现一个简易的网页画板功能。通过监听鼠标按下、移动和松开事件,获取坐标并在Canvas上下文中绘制线条,实现基础的涂鸦效果。

Canvas画板功能实现

以下代码展示了如何使用Canvas元素实现画板功能,供读者参考。

相关的CSS样式设置如下。


body,
 html {
 text-align: center;
 padding-top: 20px;
 /*margin: 0;*/
 }

canvas {
 box-shadow: 0 0 10px #333;
 margin: 0 auto;
 /*position: absolute;
 left: 0; 
 border: 1px solid red;*/
}

接下来是核心的JavaScript实现代码。


<body onload="draw()">
 <canvas id="canvas" width="800" height="600">
 </canvas>
 <script>
 function draw() {
 var canvas = document.getElementById("canvas");
 if (canvas.getContext) {
 var ctx = canvas.getContext('2d');
 //涂鸦
 //添加鼠标按下事件
 canvas.onmousedown=function(e){
  var ev=e||window.event;//兼容性
  var x=ev.clientX-canvas.offsetLeft;
  var y=ev.clientY-canvas.offsetTop;
  
 ctx.strokeStyle='red';
 ctx.lineWidth=10;
  
 ctx.beginPath();
 ctx.moveTo(x,y);

 //onmousemove
 canvas.onmousemove=function(e){
 var ev=e||window.event;//兼容性
 var x=ev.clientX - canvas.offsetLeft;
 var y=ev.clientY - canvas.offsetTop;
 ctx.lineTo(x,y);
 ctx.stroke();
 }
  canvas.onmouseup=function(){
  canvas.onmousemove="";//当鼠标不点击时则不会画画
  
  }
 }
 }
   }
</script>
</body>

以上就是本文的全部内容,希望对读者有所帮助,欢迎继续支持本站。

作者最新文章