js粘贴图片并显示

var fromDa;
$(function(){
    document.getElementById(‘app‘).addEventListener(‘paste‘, function(e) {
        if(e.target.tagName=="TEXTAREA"){//防止文本粘贴时触发粘贴图片
            return
        }else if(e.target.tagName=="INPUT"){//防止input粘贴时触发粘贴图片
            return
        }
        if(e.clipboardData) {
            e.preventDefault(); //不让图片在火狐浏览器中展示
            for(var i = 0; i < e.clipboardData.items.length; i++) {
                var c = e.clipboardData.items[i];
                var f = c.getAsFile();
//                console.log(c)
                var reader = new FileReader();
                reader.onload = function(e) {
//                    console.log(e)
                    amount.elimgSrc = reader.result
                    fromDa = new FormData();
                    fromDa.append(‘file‘, f);
                    //                console.log(fromDa.get(‘file‘))
                }
                reader.readAsDataURL(f);
            }
        }
    });
});

html部分:

<div contenteditable="true" id="tankBox" style="width: 130px;height: 97px;border:1px solid #DCDFE6;border-radius: 4px;" @keydown.delete.prevent="keypress">
                                    <img :src="elimgSrc != ‘‘ ? elimgSrc : ‘‘" id="imgSrc" style="max-width: 130px;max-height: 97px;" id="tankBoximgSrc" />
                                </div>
                                <button type="button" class="btn btn-success" style="font-size: 12px;" @click="pasteUploadcontent()">粘贴图片识别</button>
                                <button type="button" class="btn btn-success" style="font-size: 12px;" @click="pasteFun()">取消</button>

这个文本中,用的是vue.js通过虚拟dom渲染;可根据具体情况转换;主要用到的是contenteditable="true"

原文地址:https://www.cnblogs.com/weilizou/p/11797620.html

时间: 2024-11-03 22:39:37

js粘贴图片并显示的相关文章

js实现图片预显示

html页面代码 <div id="localImag" style="display:none"><img  id="preview" width="150" height="150"  /></div> <input type='file' name='file' id='doc' onclick='javascript:setImagePreview()'&g

ueditor编辑文章时候,复制粘贴内容,原来的图片不能显示

ueditor编辑文章时候.当现有文章有图片的时候, 再复制粘贴文本进去的时候.里面的图片就不能显示了, 编辑器查看文章Html代码,图片路径显示为:src="http://localhost/images/net/error!" 正确是:src="http://localhost/images/adc.jpg" 而我用的是自己定义的server的一个路径 查看源代码,发现这块功能是例如以下流程 当粘贴后.UE会将眼下编辑的全部内容中元素又一次赋值属性,即源代码中的

js图片轮换显示实例

用js脚本实现图片轮换显示,很简单的小例子,特此分享. 1,js代码部分,图片轮换代码. <script language="JavaScript"> var imgUrl=new Array(); var imgLink=new Array(); var imgText=new Array(); var picNum=0; imgUrl[1]="图片地址一"; imgLink[1]="链接1"; imgText[1]="标

js实现ctrl+v粘贴图片或是截图

浏览器环境:谷歌浏览器 1.ctrl+v粘贴图片都是监听paste时间实现的,复制的数据都存在clipboardData下面,虽然打印显示数据长度为0,但是还是可以获取数据的 2.打印clipboardData.items发现是一个DataTransferItem. 3.DataTransferItem有个getAsFile()的方法,可以获取文件 document.addEventListener('paste', function (event) { console.log(event);

word里面粘贴图片,怎么显示的不全?

分析处理     出现此故障的原因有可能是设置为固定值的文档行距小于图形的高度,从而导致插入的图形只显示出了一部分.可以采用如下的方法解决:  一. 首先,选定该图形,单击[开始]tab页中的[段落]项的右方的箭头,打开[段落]对话框.  二. 在[段落]对话框中,单击[缩进和间距]选项卡,在[行距]框中选择[单倍行距],如果在[行距]框中选择了[固定值],就需要注意将[设置值]框中的数值改为合适的高度值  三. 单击[确定]按钮.       四.也可以全部选择文档,把那个[段落]中的[行距]

js实现图片上传前的预览,实现完美兼容Firefox3,IE6,IE7,IE8和IE9的显示问题

1 <script type="text/javascript" language="javascript"> 2 function PreviewImg(imgFile){ 3 document.getElementById("idImg").style.display = "none";//隐藏初始化图片的显示,让过滤器显示 4 var newPreview=document.getElementById(&q

chrome及safari浏览器实现直接粘贴图片(纯JS)

相信大家在一些网站上看到通过QQ截图,然后粘贴图片就可以在网站实现预览该截图的功能,这么便捷的操作是不是非常利于用户的体验呢. 下面通过JQUERY进行实现这一个功能,并且实现上传该图片到后端服务器.主要利用的是HTML5的clipboardData及FileReader,目前支持chrome及safari浏览器. 1.粘贴事件绑定 首先进行绑定paste事件,触发paste事件时获取到剪贴板的内容 然后对内容进行过滤出文件为图片类型的内容,通过FileReader生成dataurl文件资源,将

div中粘贴图片并上传服务器 div中拖拽图片文件并上传服务器

应用简介:此文主要是描述如何在前端div中直接ctrl+v 粘贴图片,并上传到服务器,包括拖拽图片文件到div中 应用场景描述:用QQ或者其它切图软件截图,在指定的div中ctrl+v 粘贴并显示,点击上传按钮,图片上传到服务器.类似实现了此功能的网站有 知乎,强力建议博客园实现此功能,                     写博客时插入图片方便的多. 适用环境:本代码目前适用谷歌浏览器,其它浏览器需要稍微改良一下即可,问题不大. 开发环境:vs2015 mvc 不说废话了,开始吧: 1:首先

实现复制或截图可直接粘贴图片

在很多富文本编辑器或者编辑框中添加图片,都是通过点击按钮-选择图片-上传的形式,这需要使用者先保存好图片. 在有些情况下,实现截图或复制图片后直接粘贴图片,让操作更简单. 例如,在textarea中粘贴图片,通过监听paste动作来获取粘贴板中的图片数据,并将图片上传到服务器上,获取图片的url后在指定的地方显示,一般是将图片插入textarea中光标所在的地方. 实现过程只需要一个js文件 var input = document.getElementsByTagName("textarea&