js实现复制图片到微信

2024-06-02  本文已影响0人  每天进步一点点5454
image.png

复制代码即可实现

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>获取企业微信客服</title>
    <link rel="stylesheet" type="text/css" href="https://cdn.zhangqiaokeyan.com/css/common.css?v=5.7.8">
</head>
<style>
    .wechat {
        width: 1000px;
        margin: 0 auto;
        font-size: 35px;

    }

    .wechat ul li {
        width: 100%;
        height: 150px;
        border-radius: 10px;
        background: #dde7fb;
        margin-bottom: 20px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 10%;
    }

    .wechat ul li span {
        display: inline-block;
        width: 48%;
        height: 80px;
        background: #eee;
        border-radius: 10px;
        line-height: 80px;
        text-align: center;
    }
</style>

<body>
    <div class="wechat">
        <ul>
            <li>111<span onclick="copyHandle(1)">复制企微二维码</span>
                <img id="img1" src="https://wework.qpic.cn/wwpic3az/977430_xJvIB4zkQnuJ0L4_1702273922/0" alt="1"
                    style="opacity: 0; display: none;">
            </li>
            <li>2<span onclick="copyHandle(2)">复制企微二维码</span>
                <img id="img2" src="https://wework.qpic.cn/wwpic3az/977430_xJvIB4zkQnuJ0L4_1702273922/0" alt="2"
                    style="opacity: 0; display: none;">
            </li>
            <li>3<span onclick="copyHandle(3)">复制企微二维码</span>
                <img id="img3" src="https://wework.qpic.cn/wwpic3az/977430_xJvIB4zkQnuJ0L4_1702273922/0"
                    alt="3" style="opacity: 0; display: none;">
            </li>
            <li>4<span onclick="copyHandle(4)">复制企微二维码</span>
                <img id="img4" src="https://wework.qpic.cn/wwpic3az/977430_xJvIB4zkQnuJ0L4_1702273922/0" alt="4"
                    style="opacity: 0; display: none;">
            </li>
            <li>5<span onclick="copyHandle(5)">复制企微二维码</span>
                <img id="img5" src="https://wework.qpic.cn/wwpic3az/977430_xJvIB4zkQnuJ0L4_1702273922/0"
                    alt="5" style="opacity: 0; display: none;">
            </li>
        </ul>
    </div>

    <script type="text/javascript" src="https://cdn.zhangqiaokeyan.com/js/jquery-1.12.4.js"></script>
    <script>


        // 复制图片,支持jpg,png
        function copyHandle(num) {
            let oImg = document.getElementById('img' + num)
            let url = oImg.src;
            var canvas = document.createElement('canvas') // 创建一个画板
            let image = new Image()
            image.setAttribute("crossOrigin", 'Anonymous') //可能会有跨越问题
            image.src = url
            image.onload = () => {  // img加载完成事件
                canvas.width = image.width  //设置画板宽度
                canvas.height = image.height //设置画板高度
                canvas.getContext('2d').drawImage(image, 0, 0); //加载img到画板
                let url = canvas.toDataURL("image/png") // 转换图片为dataURL,格式为png
                this.clipboardImg(url) // 调用复制方法
            }
        }

        // 从url下载并复制图片,如果是png格式的图片直接调用此方法就能复制成功
        async function clipboardImg(url) {
            try {
                const data = await fetch(url);
                const blob = await data.blob();
                await navigator.clipboard.write([
                    new window.ClipboardItem({
                        [blob.type]: blob
                    })

                ]);
                alert('复制成功')
            } catch (err) {
                alert('复制失败')
            }
        }

    </script>
</body>

</html>
上一篇下一篇

猜你喜欢

热点阅读