返回顶部
首页 > 资讯 > 前端开发 > node.js >html5如何使用Drag事件编辑器拖拽上传图片
  • 255
分享到

html5如何使用Drag事件编辑器拖拽上传图片

2024-04-02 19:04:59 255人浏览 安东尼
摘要

小编给大家分享一下HTML5如何使用Drag事件编辑器拖拽上传图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本站的编辑器图片

小编给大家分享一下HTML5如何使用Drag事件编辑器拖拽上传图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

本站的编辑器图片上传便是使用的这部分

Seajs 定义Tools模块


define(function (require, exports, module) {

    
    exports.paste = function (selector, callback) {
        document.querySelector(selector).addEventListener("paste", function (ev) {
            var data = ev.clipboardData;
            var items = (event.clipboardData || event.originalEvent.clipboardData).items;
            for (var i in items) {
                var item = items[i];
                //如果是图片
                if (item.kind === 'file' && item.type.indexOf('image') > -1) {
                    var blob = item.getAsFile();
                    var reader = new FileReader();
                    //reader读取完成后,xhr上传
                    reader.onload = function (event) {
                        var base64 = event.target.result;
                        //ajax上传图片
                        //返回一个base64数据
                        var img = {type: item.type, kind: item.kind};
                        if (typeof callback === "function") {
                            callback(event.target.result, img, event);
                        }

                    }; // data url!
                    reader.readAsDataURL(blob);//reader
                }
            }
        });
    };

    
    exports.drag = function (selector, callback) {
        var element = document.querySelector(selector);
        element.addEventListener("drop", function (e) {
            e.preventDefault();
            var files = e.dataTransfer.files;
            for (var i = 0; i < files.length; i++) {
                //回调文件
                //alert("Drop " + file[i].name.toString());
                var reader = new FileReader();
                var item = files[i];
                reader.onload = function (event) {
                    var base64 = event.target.result;
                    //返回一个base64数据
                    var img = {type: item.type, name: item.name};
                    if (typeof callback === "function") {
                        callback(event.target.result, img, event);
                    }
                };
                reader.readAsDataURL(files[i]);//reader
            }
            return false;
        });

        element.addEventListener("dragenter", function (e) {
            e.stopPropagation();
            e.preventDefault();
        });

        element.addEventListener("draGover", function (e) {
            e.dataTransfer.dropEffect = "copy";
            e.stopPropagation();
            e.preventDefault();
        });

        document.body.addEventListener("dragover", function (e) {
            e.stopPropagation();
            e.preventDefault();
            return false;
        });
    }

    
    exports.parseImg = function () {

    }
});

使用方法:

//粘贴上传图片
            Edtools.paste("#post_content", function (base64, image, event) {
                $.post("{:url('api/uploader/upEditorImg')}",{base:base64}, function (ret) {
                    layer.msg(ret.msg);
                    if (ret.code === 1) {
                        //新一行的图片显示
                        editor.insertValue("\n![" + ret.data.title + "](" + ret.data.path + ")");
                    }
                });
            });

            //拖拽上传图片
            Edtools.drag("#post_content", function (base64, image, event) {
                $.post("{:url('api/uploader/upEditorImg')}",{base:base64}, function (ret) {
                    layer.msg(ret.msg);
                    if (ret.code === 1) {
                        //新一行的图片显示
                        editor.insertValue("\n![" + ret.data.title + "](" + ret.data.path + ")");
                    }
                });
            });

以上是“html5如何使用Drag事件编辑器拖拽上传图片”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网node.js频道!

--结束END--

本文标题: html5如何使用Drag事件编辑器拖拽上传图片

本文链接: https://lsjlt.com/news/72680.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • html5如何使用Drag事件编辑器拖拽上传图片
    小编给大家分享一下html5如何使用Drag事件编辑器拖拽上传图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本站的编辑器图片...
    99+
    2024-04-02
  • HTML5+CSS3如何实现无插件拖拽上传图片功能
    这篇文章主要为大家展示了“HTML5+CSS3如何实现无插件拖拽上传图片功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HTML5+CSS3如何实现无插件拖拽...
    99+
    2024-04-02
  • 怎么使用HTML5与CSS3实现无插件拖拽上传图片功能
    这篇文章主要介绍“怎么使用HTML5与CSS3实现无插件拖拽上传图片功能”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用HTML5与CSS3实现无插件拖拽上传图片功能”文章能帮助大家解决问题。...
    99+
    2023-07-04
  • ImgUploadJS中如何使用HTML5 File API 实现截图粘贴上传、拖拽上传
    这篇文章将为大家详细讲解有关ImgUploadJS中如何使用HTML5 File API 实现截图粘贴上传、拖拽上传 ,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一 . 背景及效果 当前互联网上传文件最...
    99+
    2023-06-09
  • 使用element+vuedraggable实现图片上传拖拽排序
    本文实例为大家分享了用element+vuedraggable实现图片上传拖拽排序的具体代码,供大家参考,具体内容如下 <template>     <div cl...
    99+
    2024-04-02
  • html5怎么实现多图片预览上传及点击可拖拽控件
    小编给大家分享一下html5怎么实现多图片预览上传及点击可拖拽控件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在做图片上传时发现一个蛮好用的控件,支持多张图片同...
    99+
    2023-06-09
  • HTML中如何使用上传图片插件、图文编辑、时间插件
    这篇文章将为大家详细讲解有关HTML中如何使用上传图片插件、图文编辑、时间插件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。<!DOCTYPE html>&l...
    99+
    2024-04-02
  • 怎么使用element+vuedraggable实现图片上传拖拽排序
    这篇文章主要介绍了怎么使用element+vuedraggable实现图片上传拖拽排序的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用element+vuedraggable实现图片上传拖拽排序文章都会有...
    99+
    2023-06-29
  • vue2使用 tinymce富文本编辑器-图片上传、粘贴图片上传致服务器
    安装tinymce富文本编辑器插件 npm i tinymce npm i @tinymce/tinymce-vue 创建Editor.js文件 封装组件 以便使用 impor...
    99+
    2023-09-04
    前端 javascript vue
  • PyQt5如何使用mimeData实现拖拽事件
    小编给大家分享一下PyQt5如何使用mimeData实现拖拽事件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现思路简要介绍QMimeData2、QMimeDa...
    99+
    2023-06-25
  • HTML5可预览多图片如何使用Ajax上传
    这篇文章主要介绍了HTML5可预览多图片如何使用Ajax上传,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、关于图片上传什么什么的在XHT...
    99+
    2024-04-02
  • 如何利用HTML5实现图片文件异步上传
    小编给大家分享一下如何利用HTML5实现图片文件异步上传,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 1.文件未选择 2.文...
    99+
    2024-04-02
  • 如何使用HTML5实现多张图片上传功能
    小编给大家分享一下如何使用HTML5实现多张图片上传功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! HTML结构: &l...
    99+
    2024-04-02
  • 如何在vue3.0+中使用tinymce及实现多图上传文件上传公式编辑功能
    相关文档 本文部分内容借鉴: https://www.cnblogs.com/zhongchao666/p/11142537.html tinymce中文文档: http://tin...
    99+
    2024-04-02
  • 如何使用HTML5移动开发图片压缩上传功能
    这篇文章主要为大家展示了“如何使用HTML5移动开发图片压缩上传功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用HTML5移动开发图片压缩上传功能”这...
    99+
    2024-04-02
  • 如何在Vue中使用axios上传图片
    如何在Vue中使用axios上传图片?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在vue和axios的配合下实战一波<!--   &nbs...
    99+
    2023-06-15
  • html5中canvas移动浏览器上如何实现图片压缩上传
    这篇文章主要介绍html5中canvas移动浏览器上如何实现图片压缩上传,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、<input type="file"...
    99+
    2024-04-02
  • 如何导出HTML5中Canvas图片并上传服务器功能
    小编给大家分享一下如何导出HTML5中Canvas图片并上传服务器功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!导出HTML5 Canvas图片,并上传服务器最近接触的项目中,经常遇到需要canvas绘制图片的需求,比...
    99+
    2023-06-09
  • 如何使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能
    这篇文章主要介绍如何使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!第一步:下载localRes...
    99+
    2024-04-02
  • Android如何使用腾讯X5浏览器上传图片
    小编给大家分享一下Android如何使用腾讯X5浏览器上传图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!这几天在客户端接入一个Web页的客服系统,用来接受用户...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作