html5实现把上传的图片转成base64编码在显示(代码实例)
本章给大家介绍html5实现把上传的图片转成base64编码在显示(代码实例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
首先我们来详细的看一看base64编码:
什么是base64编码?
Base64是一种网络上最常见的用于传输8Bit字节代码的编码方式,Base64编码可用于在HTTP环境下传递较长的标识信息,同时可以放在url当中使用(采用一种用于URL的改进Base64编码)。因为base64不惧可读性,即所编码的数据不会被人用肉眼所直接看到,所以具有一定的加密功能。
为什么要把图片转成base64编码?
将图片转换成base64编码主要是为了用在网页上减少请求次数,我们的网站采用的都是http协议,而http协议是一种无状态的连接,就是连接和传输后都会断开连接节省资源。此时解决的方法就是尽量的减少http请求,此时base64编码可以将图片添加到css中,实现请求css即可下载下来图片,减少了再次请求图片的请求。
html5如何实现把上传的图片转成base64编码在显示?
将图片转换成base64需要使用到一个html5的接口:FileReader.readAsDataURL()接口,这个接口可以将文件转换成base64编码格式,并且再以data:URL的形式展现出来
思路:
1.创建三个html标签,input用来上传图片,textarea用来显示base64代码,因为base64代码内容很多所以使用textarea标签,p标签用来显示图片。
2.使用js调用html5的FileReader.readAsDataURL()的API,声明三个变量用于控制图片上传,base64代码显示以及图片的显示。
3.img_upload.addEventListener('change',readFile,false);添加一个监听事件,如果上传文件发生变化就执行readFile函数。
4.readFile函数的内容就是调用接口,将图片转换成base64再输出。
5.在执行转换和输出之前先判断一下上传文件是不是图片。
代码如下:
<!Doctype html> <html> <head> <meta charset="utf-8" /> <title>html5 图片转base64编码</title> <style> * { margin: 0; padding: 0; } .demo{ width: 100%; margin: 50px; } </style> <script type="text/javascript"> window.onload = function() { // 抓取上传图片,转换代码结果,显示图片的dom var img_upload = document.getElementById("img_upload"); var base64_code = document.getElementById("base64_code"); var img_area = document.getElementById("img_area"); // 添加功能出发监听事件 img_upload.addEventListener('change', readFile, false); } function readFile() { var file = this.files[0];//这里是抓取到上传的对象。 if(!/image\/\w+/.test(file.type)) { alert("请确保文件为图像类型"); return false; } var reader = new FileReader(); reader.readAsDataURL(file); reader.onload = function() { base64_code.innerHTML = this.result; //this.result里的这个result是FileReader.readAsDataURL()接口当中转换完图片输出的base64结果存放在result当中 img_area.innerHTML = '<div>图片img标签展示:</div><img src="' + this.result + '" alt=""/>'; } } </script> </head> <body> <div class="demo"> <input type="file" id="img_upload" /> <textarea id="base64_code" rows="30" cols="100"></textarea> <p id="img_area"></p> </div> </body> </html>
看看效果图:
总结:以上就是在HTML5里实现图片转base64编码的全部代码,大家可以自己动手编译试试。
Atas ialah kandungan terperinci html5实现把上传的图片转成base64编码在显示(代码实例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Panduan untuk Sempadan Jadual dalam HTML. Di sini kita membincangkan pelbagai cara untuk menentukan sempadan jadual dengan contoh Sempadan Jadual dalam HTML.

Ini ialah panduan untuk Nested Table dalam HTML. Di sini kita membincangkan cara membuat jadual dalam jadual bersama-sama dengan contoh masing-masing.

Panduan untuk HTML margin-kiri. Di sini kita membincangkan gambaran keseluruhan ringkas tentang HTML margin-left dan Contoh-contohnya bersama-sama dengan Pelaksanaan Kodnya.

Panduan untuk Susun Atur Jadual HTML. Di sini kita membincangkan Nilai Susun Atur Jadual HTML bersama-sama dengan contoh dan output n perincian.

Panduan untuk Memindahkan Teks dalam HTML. Di sini kita membincangkan pengenalan, cara teg marquee berfungsi dengan sintaks dan contoh untuk dilaksanakan.

Panduan kepada Senarai Tertib HTML. Di sini kami juga membincangkan pengenalan senarai dan jenis Tertib HTML bersama-sama dengan contoh mereka masing-masing

Panduan untuk Butang onclick HTML. Di sini kita membincangkan pengenalan, kerja, contoh dan onclick Event masing-masing dalam pelbagai acara.

Panduan untuk Pemegang Tempat Input HTML. Di sini kita membincangkan Contoh Pemegang Tempat Input HTML bersama-sama dengan kod dan output.
