美文网首页
使用JavaScript实现手动签名的功能

使用JavaScript实现手动签名的功能

作者: zlchen | 来源:发表于2024-04-10 20:20 被阅读0次

要在JavaScript中实现手动签名的功能,可以使用HTML5的<canvas>元素。下面是一个简单的示例代码:

<!DOCTYPE html>
<html>
<head>
    <title>手动签名</title>
</head>
<body>
    <h1>手动签名</h1>
    <canvas id="signatureCanvas" width="500" height="200" style="border:1px solid #000000;"></canvas>
    <br>
    <button onclick="clearCanvas()">清除</button>
    <button onclick="saveSignature()">保存</button>

    <script>
        var canvas = document.getElementById("signatureCanvas");
        var context = canvas.getContext("2d");
        var isDrawing = false;
        var lastX = 0;
        var lastY = 0;

        canvas.addEventListener("mousedown", function (e) {
            isDrawing = true;
            lastX = e.offsetX;
            lastY = e.offsetY;
        });

        canvas.addEventListener("mousemove", function (e) {
            if (isDrawing) {
                context.beginPath();
                context.moveTo(lastX, lastY);
                context.lineTo(e.offsetX, e.offsetY);
                context.strokeStyle = "#000000";
                context.lineWidth = 2;
                context.stroke();
                lastX = e.offsetX;
                lastY = e.offsetY;
            }
        });

        canvas.addEventListener("mouseup", function () {
            isDrawing = false;
        });

        function clearCanvas() {
            context.clearRect(0, 0, canvas.width, canvas.height);
        }

        function saveSignature() {
            var imageURL = canvas.toDataURL(); // 转换为base64编码的图像URL
            // 在此处可以将imageURL发送到服务器保存,或者进行其他处理
            console.log(imageURL);
        }
    </script>
</body>
</html>

这段代码创建了一个<canvas>元素,当鼠标在画布上按下、移动和释放时,会在画布上绘制路径并保存鼠标的坐标。清除按钮会清除画布上的内容,保存按钮会将画布内容转为base64编码的图像URL并将其打印到控制台。

你可以根据需要对saveSignature()函数进行修改,以便将签名图像发送到服务器保存或进行其他处理。

image.png

相关文章

网友评论

      本文标题:使用JavaScript实现手动签名的功能

      本文链接:https://www.haomeiwen.com/subject/moxcxjtx.html