JS 复制粘贴的使用

先不说复制,先说粘贴

demo

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title>复制图片demo</title>
    </head>
    <style>
        * { margin: 0px;padding: 0px; }
        .d0 {
            margin: 0px auto;
            width: 200px;height: 200px;
            border: 1px solid red;
        }
    </style>
    <script src="./jquery-3.2.1.min.js"></script>

    <body>
        <div contenteditable class="d0" id="d0"></div>
        <div id="btn">按钮</div>
        <img id="img" />
    </body>
    <script>
        $(function() {
            $("#d0").on("paste", function(e){
                console.log(e)
                var clipboardData = e.originalEvent.clipboardData;
                var items = clipboardData.items || [];
                var types = clipboardData.types || [];
                console.log(types[0])
                switch(types[0]) {
                    case 'Files':
                        var reader = new FileReader();
                        console.log(items[0].getAsFile())
                        reader.readAsDataURL(items[0].getAsFile());
                        reader.onload = function(){
                            $("#img").attr('src', reader.result);
                        };
                    break;
                    case 'text/html':
                        var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i;
                        var str = clipboardData.getData('text/html');
                        var arr = str.match(srcReg);
                        $("#img").attr('src', arr[1]);
                    break;
                    case 'text/plain':
                        $("#d0").html(clipboardData.getData('Text'));
                    break;
                }
                return false;
            })
            $("#btn").on("click", function() {
                $("#d0").trigger("paste");
            })
        })
    </script>

</html>

记得把JQ文件加载了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值