首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

HTML5图片预加载

HTML5中,我们可以使用drawImage方法在canvas上进行画图操作,其基本代码如下: var canvas = document.getElementById("canvas"); var...image = new Image(); image.src = "images/01.jpg"; context.drawImage(image, 0, 0); 不过我们会发现这样写是无法显示出图片的...,因为图片并没有加载完全,我们就调用了drawImage方法,我们可以使用img的onload方法,使图片加载完全后 在执行drawImage操作,代码如下 var image = new Image(...= "images/01.jpg"; image.onload = function() { context.drawImage(image, 0, 0); } 或者使用标签先加载图片...('image'); 但是在图片较多的情况下,使用上面两种方式都不是太优雅,我们可以使用下面的方法,等待所有图片加载完全后,再执行其他操作 document.addEventListener("DOMContentLoaded

2.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

html5前端图片压缩

如今手机像素越来越高,造成拍出来的照片越来越大,随便拍一张就好几兆,于是乎就有了一种需求就是压缩图片,在之前压缩图片的功能是在后台操作的,之后前端亦可以进行图片的压缩功能。...前端进行图片压缩的原理很简单,就是利用canvas来进行压缩,js将file框内的图片文件读取之后,按照比例绘制到canvas上,然后将canvas保存成图片即可实现了压缩功能。...,调用方法时填入图片允许的最大宽度或者是最大的高度 //如果最大宽度为0 则按照最大高度固定,宽度自适应的方式来实现 //如果是最大高度为0,则按照最大的宽度来实现...ctx.drawImage(img,0,0, width, height); return canvas.toDataURL("image/jpeg", 0.7);//这里的0.7值的是图片的质量...base64 $("#myImage").attr("src",thumb); } } 至此,图片的压缩功能已经完全实现了

3.6K50

HTML5 拖拽上传图片实例

,一种拖拽上传,一种常规的选择文件上传,另外的就是添加网络图片。...它很巧妙的把三种上传模式整合到了一起,而且你可以用IE浏览器浏览下,如果不支持HTML5,是没有拖拽上传图片的提示的,如图:   拖拽上传最重要的就是js部分的代码,它实现了70%的功能,另外30%仅仅是把图片信息提交到后台...fileList.length == 0){ $('.dashboard_target_box').removeClass('over'); return; } //检测文件是不是图片...主要实现代码是从“功能实现”开始的,这块具体为何这样操作,原理是什么,我就不多说了,大家可以参考下这篇文章:《人人网首页拖拽上传详解(HTML5 Drag&Drop、FileReader API、formdata...文章最开始提到,还有点击选择文件上传和网络图片,因为这2个不属于这次的主题范围内,就不说了。况且这2个功能实现起来都不麻烦。 demo下载

2.7K30

html5实现图片预览功能

我们在上传图片的时候往往需要预览,目前大部分的网站,总结起来用三种方式来实现: 第一种最为常见,需要和后端配合。...点击上传图片的input,触发input的onchange事件,在onchange事件中向后端提供的接口发送图片信息,之后返回的数据中包括图片的url,再将url赋值给img的src属性从而实现图片预览...当然,前端的朋友会产生疑惑,图片是以什么形式传递到后端呢?针对这个我会单独写一篇文章来阐述,现在暂不详述。简单来说,表单形式传递图片会修改entype属性,这里一般会用formdata实现。...FileReader实例化的对象上有个方法:reader.readAsDataURL(参数), 这个方法是个回调函数,参数为上面获取的包含图片信息的file对象,readAsDataURL读取图片信息对象完成后...,会触发reader上的onloadend事件,该事件的回调函数中的数据就是datebase64化后的图片信息,将其插入到图片的img的src图片展现。

5.6K40

在触屏设备上面利用html5裁剪图片

前言 如今触屏设备越来越流行,并且大多数已经支持html5了。针对此。对触屏设备开发图片裁剪功能, 让其能够直接处理图片。减轻服务端压力。 技术点 浏览器必须支持html5,包含fileReader。...思路 利用filereader直接读取本地图片。然后赋予一个图片。该图片及裁剪框的位置计算跟pc端一样,可是触发的事件不一样,触屏版是依据触屏事件触发的。...裁剪时,利用cavas的api直接画出相关图像,然后得到数据。再利用xmlhttprequest发送请求。 非html5无法完毕这个过程。...点击图片上传选择后将载入预览图片 var Options={ width:300, height:300, cutWidth:150, cutHeight:200,...xhr.readyState == 4) { if(xhr.status == 200) { //--获取返回的数据

1.3K20

图片上传前预处理,等比缩放、裁剪 (html5 + canvas)

处理完成后,将返回处理完成的数据,及原图片文件的大小、宽度、高度和Base64数据。...: 21100 处理完成的图片文件大小 type: image/png 处理完成的图片类型 rawdata: Object 原图片相关属性(宽高/文件大小/Base64编码数据/类型/元素节点)...data: base64Data, 原图片base64格式数据 element: image, 原图片接到对象 height: 1200, 原图片高度 size: 215444, 原图片文件大小 type...toBlobData(Base64Data, type) // 将图片base64数据转换为blob可上传的数据; type可选,默认与Base64Data类型相同,支持类型image/png, image...8 图片数据加载错误 9 当前图片文件尺寸小于裁剪尺寸 源码地址:https://github.com/capricorncd/image-process-tools

2K20

html5中如何解决canvas图片跨域问题-canvas无法导入远程图片

今天我们来说说在开发中比较常谈及的问题,那就是跨域问题,我们就来说说在:“html5中如何解决canvas图片getImageData,toDataURL跨域问题?”这个问题吧!...三、HTML crossOrigin属性解决资源跨域问题 在HTML5中,有些元素提供了支持​CORS(Cross-Origin Resource Sharing)​(跨域资源共享)的属性,这些元素包括...根据,根据实践发现,在IE浏览器下,如果请求的图片过大,几千像素那种,图片会加载失败,我猜是超过了blob尺寸限制。...六、结束语 那么这就是有关于:“html5中如何解决canvas图片getImageData,toDataURL跨域问题?”...未经允许不得转载:肥猫博客 » html5中如何解决canvas图片跨域问题-canvas无法导入远程图片

66750

图片上传前预处理,等比缩放、裁剪 (html5 + canvas)

本文作者:IMWeb capricorncd 原文出处:IMWeb社区 未经同意,禁止转载 Image pre processing for upload (html5 + canvas) 源码地址...处理完成后,将返回处理完成的数据,及原图片文件的大小、宽度、高度和Base64数据。...: 21100 处理完成的图片文件大小 type: image/png 处理完成的图片类型 rawdata: Object 原图片相关属性(宽高/文件大小/Base64编码数据/类型/元素节点)...data: base64Data, 原图片base64格式数据 element: image, 原图片接到对象 height: 1200, 原图片高度 size: 215444, 原图片文件大小 type...toBlobData(Base64Data, type) // 将图片base64数据转换为blob可上传的数据; type可选,默认与Base64Data类型相同,支持类型image/png,

3.5K60

基于HTML5的Drag and Drop生成图片Base64信息

HTML5的Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过Drag...and Drop生成图片的Base64的字符串信息。...使用Base64方式的图片有诸多好处,可将多个图片信息整合到单个js文件避免多次http请求,可以避免WebGL例子跨域访问的安全限制无法本地文件运行等好处,当然弊端也不少例如不能有效利用浏览器图片缓存机制等...使用HT for Web的朋友会发现HT的例子很多注册图片都采用Base64的方式,这主要是为了方便用户直接本地文件打开HT的手册即可操作浏览,无需构建web服务器发布进行访问,用户常问然后将图片转出Base64...该工具由一个列表、一个拓扑图和一个文本框三部分组成,用户任意拖拽本地多图片文件到任意页面部分,HT自动将图片信息生成对应的DataModel数据模型,列表显示图片效果、名称和宽高信息,拓扑显示图片、修改时间和文件大小等信息

71540
领券