H5 canvas+js实现签名板

示例:


代码部分:

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>签名板</title>
	<style>
		#myCanvas {
			background: #cccccc;
			display: block;
			margin: 0 auto;
		}
		#clear{
			margin-left: 30%;
			margin-top: 20px;
		}
	</style>
</head>
<body>
	<canvas id="myCanvas" width="600" height="300"></canvas>
	<button id="clear" onclick="canvas.width = canvas.width">复原</button>
</body>
<script>
	var canvas = document.querySelector('#myCanvas');//画布
	var ctx = canvas.getContext('2d');//画笔
	(function(){
		ctx.lineWidth = .5;
		canvas.onmousedown = function () {
			ctx.beginPath();
			ctx.moveTo(event.offsetX, event.offsetY);//起点
			document.onmousemove = function(){
				ctx.lineTo(event.clientX - canvas.offsetLeft, event.clientY - canvas.offsetTop);
				ctx.stroke();
			}
			document.onmouseup = function(){
				document.onmousemove = null;
			}
		}
	})();
</script>
</html>

 

Canvas是HTML5提供的一种绘图技术,可以结合JavaScript动态创建和操作图形。如果你想利用canvas和JavaScript实现在点击时更换图片,你可以按照以下步骤操作: 1. 创建HTML元素:首先,在HTML中添加一个`<canvas>`元素和一些图片的`<img>`标签作为备选。 ```html <canvas id="myCanvas"></canvas> <img src="image1.jpg" id="image1"> <img src="image2.jpg" id="image2" style="display:none;"> <!-- 更多图片... --> ``` 2. 获取DOM元素:在JavaScript中,获取canvas和图片元素。 ```javascript var canvas = document.getElementById('myCanvas'); var images = document.querySelectorAll('img'); ``` 3. 绘制图片:创建一个函数,用于绘制指定的图片到canvas上。 ```javascript function drawImage(imgIndex) { var ctx = canvas.getContext('2d'); var img = images[imgIndex]; ctx.drawImage(img, 0, 0); } ``` 4. 添加点击事件监听:当用户点击canvas时,检查点击位置并更新当前显示的图片。 ```javascript canvas.addEventListener('click', function(event) { var rect = canvas.getBoundingClientRect(); var x = event.clientX - rect.left; var y = event.clientY - rect.top; // 计算鼠标点击在canvas内的索引位置(假设图片宽度相等) var index = Math.floor(x / (images[0].width || images[0].clientWidth)); // 显示对应的图片 for (var i = 0; i < images.length; i++) { if (i === index) { images[i].style.display = 'block'; } else { images[i].style.display = 'none'; } } // 更新画布 drawImage(index); }); ``` 在这个例子中,当你在canvas上点击时,会切换显示图片,并将新图像绘制到canvas上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小蟹 !

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值