jQuery限制上傳圖片格式和大小程式碼例項
通常情況下網站對上傳的圖片格式和大小都會有所限制。
下面就分享一段能夠實現此功能程式碼,感興趣的朋友可以做一下參考。
程式碼中缺乏圖片,不過不影響核心功能。
特別說明:僅僅做前端驗證是不夠的,通常情況下,後臺也會進行同樣的驗證。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> .form-group { width: 100%; margin-bottom: 20px; height: auto; } .va-top { vertical-align: top; display: inline-block; } .input-w { width: 500px; } .img-left { padding-right: 16px; width: 65%; border-right: 1px dashed #cccccc; } .img-left a, .item_img { width: 120px; height: 120px; text-align: center; display: inline-block; margin-right: 50px; vertical-align: top; } .a_first + .item_img { margin-right: 0px; } .item_img img { width: 120px; height: 120px; } .img-left .a_last, .img-left .a_first { padding-top: 85px; background-image: url("../img/addPic.png"); background-repeat: no-repeat; background-position: center center; } .img-left .a_last { margin-right: 0; } .img-left .format-tip { margin-top: 20px; } .img-right { padding-left: 30px; width: 34%; } .img-right span { text-align: center; } input[type="file"] { display: none; } </style> </head> <body> <div class="form-group file_group"> <label class="va-top">照片</label> <div class="input-w va-top"> <div class="img-left va-top"> <a class="a_first" id="firstBtn">新增正面照片</a> <a class="a_last" id="lastBtn">新增反面照片</a> <p class="format-tip">請上傳身份證正面和反面照片,要求能看清證件號碼,格式要求:支援jpg/jepg/png,大小不超過4W</p> </div> <div class="img-right va-top"> <p>參考示例</p> <img src="../img/img0.jpg" alt="照片的正反兩面"> </div> </div> <input type="file" id="firstFile"> <input type="file" id="lastFile"> <span></span> </div> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> (function($, win) { var imgBox = '<div class="item_img"><img src="ex.jpg"></div>'; $(bind_img); function bind_img() { var firstBtn = document.getElementById("firstBtn"); var lastBtn = document.getElementById("lastBtn"); var fileFirst = document.getElementById("firstFile"); var fileLast = document.getElementById("lastFile"); bind_change(firstBtn, fileFirst); bind_change(lastBtn, fileLast); } //繫結圖片選擇的事件 function bind_change(btnObj, fileObj) { $(btnObj).unbind("click").bind("click", function() { fileObj.click(); }); $(fileObj).change(function() { var that = $(this); //判斷圖片的型別和大小 judgeTypeSize(btnObj, that, 160, img_upload); }); } function judgeTypeSize(btnObj, fileObj, maxSize, callback) { var value = fileObj.val(); if (!value.match(/.jpg|.jpeg|png/i)) { alert("圖片格式必須是jpg或jpeg或png"); } else { var size = fileObj[0].files[0].size; //得到圖片的大小[] var span = fileObj.parent().find("span"); //錯誤的提示span console.log(size / 1024 + "kb"); var trueSize = Math.ceil(size / 1024); //把位元組轉換成kb if (trueSize > maxSize) { span.show(); span.html("照片尺寸過大,請重新選擇"); } else { span.hide(); if (callback) { callback(btnObj, fileObj[0]); } } } } function getImgUrl(fileObj) { var url; if (fileObj.files && fileObj.files[0]) { //火狐下 url = window.URL.createObjectURL(fileObj.files[0]); } else { ////IE下 fileObj.select(); url = fileObj.selection.createRange().text; document.selection.empty(); } return url; } //得到圖片的地址並進行預覽 function img_upload(btnObj, fileObj) { var url = getImgUrl(fileObj); var $imgBox = $(imgBox); var imgLeft = $(".img-left"); var img = $imgBox.find("img"); img.attr("src", url); imgLeft[0].insertBefore($imgBox[0], btnObj); //js的方法 //$(btnObj).hide(); console.log("成功了"); } })(jQuery, window); </script> </body> </html>
相關文章
- javascript檢測上傳圖片大小程式碼例項JavaScript
- js獲取上傳圖片尺寸和格式程式碼例項JS
- javascript檢測上傳檔案的格式和大小例項程式碼JavaScript
- jquery獲取圖片的實際尺寸大小程式碼例項jQuery
- 上傳圖片本地預覽例項程式碼
- 圖片上傳預覽效果程式碼例項
- 圖片尺寸大小自適應程式碼例項
- 按比例縮放圖片大小程式碼例項
- Element-UI框架 —— Upload 上傳(圖片上傳格式和大小判斷)UI框架
- html5拖動上傳圖片效果程式碼例項HTML
- [程式碼片段]javascript檢查圖片大小和格式JavaScript
- 求高手解決用java限制上傳圖片大小!!Java
- jQuery選項卡切換圖片效果程式碼例項jQuery
- js檢測上傳檔案大小和型別例項程式碼JS型別
- input file利用FileReader實現圖片上傳程式碼例項
- jquery圖片預載入簡單程式碼例項jQuery
- jQuery實現圖片預載入程式碼例項jQuery
- js驗證上傳圖片副檔名型別程式碼例項JS型別
- jQuery實現的圖片預載入程式碼例項jQuery
- 圖片大小自適應手機螢幕程式碼例項
- jQuery實現設定字型大小程式碼例項jQuery
- nginx限制上傳大小和超時時間設定說明/php限制上傳大小NginxPHP
- jQuery實現的圖片尺寸自適應程式碼例項jQuery
- jquery判斷<img>圖片是否載入完成程式碼例項jQuery
- jQuery實現的滑鼠滑過切換圖片程式碼例項jQuery
- jQuery實現的滑鼠滑過圖片上縮彈出文字說明程式碼例項jQuery
- ASP上傳圖片程式碼例子
- jquery.upload.js實現非同步上傳程式碼例項jQueryJS非同步
- jQuery is() 程式碼例項jQuery
- css圖片變黑白程式碼例項CSS
- 利用css切割圖片程式碼例項CSS
- jQuery處理json格式資料程式碼例項jQueryJSON
- jQuery大圖跟隨效果程式碼例項jQuery
- 手動上傳圖片,怎麼調整大小和居中
- 圖片上傳的asp程式碼 (轉)
- php檔案上傳大小限制PHP
- apache上傳檔案大小限制Apache
- apache限制上傳檔案大小Apache