头像

HTML5应用之文件拖拽上传

来源:http://school.sxbd100.com/html5/37.html 代码交流管理员 2016-09-13浏览(936)

使用HTML5的文件API,可以将操作系统中的文件拖放到浏览器的指定区域,实现文件上传到服务器。本文将结合实例讲解HTML5+jQuery+PHP实现拖拽上传图片的过程,来看下HTML5的魅力吧。

程序员,你不是一个人;网站开发QQ群:136483411  在线充值,或联系QQ 304534221直接充值

HTML5应用之文件拖拽上传
分类:首页>>网页特效>>html5 阅读次数:937
查看演示 下载次数: 3

手机扫码访问:

下载资源 下载积分: 0

  HTML

  我们在页面中放置一个拖拽区域#drop_area,即接收拖拽的区域,#preview用来预览拖拽上传的图片信息。

    <div id="drop_area">将图片拖拽到此区域</div> 

    <div id="preview"></div> 

  Javascript

  要想实现拖拽,页面需要阻止浏览器默认行为,即四个事件(拖离、拖后放、拖进、拖来拖去),因为我们要阻止浏览器默认将图片打开的行为,这里我们使用jQuery来完成。

    $(function(){ 

        //阻止浏览器默认行。 

        $(document).on({ 

            dragleave:function(e){    //拖离 

                e.preventDefault(); 

            }, 

            drop:function(e){  //拖后放 

                e.preventDefault(); 

            }, 

            dragenter:function(e){    //拖进 

                e.preventDefault(); 

            }, 

            dragover:function(e){    //拖来拖去 

                e.preventDefault(); 

            } 

        }); 

        ... 

    }); 

  最后总结下HTML5实现拖拽上传的技术要点:

  1、监听拖拽:监听页面元素的拖拽事件,包括:dragenter、dragover、dragleave和drop,一定要将dragover的默认事件取消掉,不然无法触发drop事件。如需拖拽页面里的元素,需要给其添加属性draggable=”true”;

  2、获取拖拽文件:在drop事件触发后通过e.dataTransfer.files获取拖拽文件列表,.length属性获取文件数量,.type属性获取文件类型。

  3、读取图片数据并添加预览图。

  4、发送图片数据:使用FormData模拟表单数据AJAX提交文件流。


标签: 拖拽上传 HTML5
声明:本文为原创文章,如需转载,请注明来源school.sxbd100.com并保留原文链接:http://school.sxbd100.com/html5/37.html
如果您觉得本文的内容对您的学习有所帮助,您可以扫描下面的二维码请我喝杯茶,感谢!
alipay转账 alipay转账 扫扫加qq群

评论(0)


温馨提示:为规范评论内容,垃圾评论一律封号...

后面还有条评论,点击查看>>