本地图片在线预览

一时失言乱红尘 2022-06-04 06:28 502阅读 0赞
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>本地图片在线预览</title>
  6. </head>
  7. <body>
  8. <script type="text/javascript">
  9. var result=document.getElementById("result");
  10. var file=document.getElementById("file");
  11. //判断浏览器是否支持FileReader接口
  12. if(typeof FileReader == 'undefined'){
  13. result.InnerHTML="<p>你的浏览器不支持FileReader接口!</p>";
  14. //使选择控件不可操作
  15. file.setAttribute("disabled","disabled");
  16. }
  17. function readAsDataURL(){
  18. //检验是否为图像文件
  19. var file = document.getElementById("file").files[0];
  20. if(!/image\/\w+/.test(file.type)){
  21. alert("看清楚,这个需要图片!");
  22. return false;
  23. }
  24. var reader = new FileReader();
  25. //将文件以Data URL形式读入页面
  26. reader.readAsDataURL(file);
  27. reader.onload=function(e){
  28. var result=document.getElementById("result");
  29. //显示文件
  30. result.innerHTML='<img src="' + this.result +'" alt="" />';
  31. }
  32. }
  33. function readAsBinaryString(){
  34. var file = document.getElementById("file").files[0];
  35. var reader = new FileReader();
  36. //将文件以二进制形式读入页面
  37. reader.readAsBinaryString(file);
  38. reader.onload=function(f){
  39. var result=document.getElementById("result");
  40. //显示文件
  41. result.innerHTML=this.result;
  42. }
  43. }
  44. function readAsText(){
  45. var file = document.getElementById("file").files[0];
  46. var reader = new FileReader();
  47. //将文件以文本形式读入页面
  48. reader.readAsText(file);
  49. reader.onload=function(f){
  50. var result=document.getElementById("result");
  51. //显示文件
  52. result.innerHTML=this.result;
  53. }
  54. }
  55. </script>
  56. <p>
  57. <label>请选择一个文件:</label>
  58. <input type="file" id="file" />
  59. <input type="button" value="读取图像" onclick="readAsDataURL()" />
  60. <input type="button" value="读取二进制数据" onclick="readAsBinaryString()" />
  61. <input type="button" value="读取文本文件" onclick="readAsText()" />
  62. </p>
  63. <div id="result" name="result"></div>
  64. </body>
  65. </html>

发表评论

表情:
评论列表 (有 0 条评论,502人围观)

还没有评论,来说两句吧...

相关阅读

    相关 图片在线功能实现过程

    另外一个同事开发出来一个鼠标移动上去就显示图片的功能,但是总是不好用,所以我就是用jquery按照他的思路写了一个,简单的显示是实现了的,但是在弹出框的内部计算边框范围是有难度

    相关 文件在线

    浏览器并不能支持word、excel文件的在线预览,所以都是将word、excel转换为浏览器能直接看的文件格式(html、pdf、txt、png、svg、flash),因此在