Недавно я делаю мобильное приложение HTML5. медленный.
Я обнаружил, что в Интернете я обнаружил, что в Интернете это очень практично, поэтому я поделюсь им здесь.
Шаг 1: Скачать LocalResizeImgLocalResizeImg помещается в GitHub, адрес: https://github.com/think2011/localresizeimg.
Шаг 2: ввести JS, связанный с LocalResizeImg в веб -инженерииDeclaze localResizeImg для сжатия, скопируйте дистальную папку в каталоге в проект, и я поместил ее в каталог JS.
Затем импортируйте jQuery и LocalResizeImg JS в их собственном JS. нравиться:
<span style = белая точка: pre> </span> <script src = <c: url value =/js/jquery/jquery-1.10.0.min.js/>> </scan Style = White-Space: Pre> </span> <script type = text/javascript src = <c: url value =/js/lrz/distal/lrz.bundle.js/>> </script>Шаг 3: Добавьте событие OnChange в поле файла при вводе вашей собственной загрузки.
<input type = file id = payfile name = myfile style = display: none;
Реализуйте сжатие кода в методе FileChange и асинхронную передачу базы64, сгенерированного после сжатия на фон
Функция fileChange (that) {var filePath = $ (that). if (.jpg | .png | .bmp | .jpeg.touppercase (). indexof (ext.touppercase ()) ==-1) {alert (только разрешен JPG, Png, BMP, JPEG FORMAT PIRTION); } // Использование ширины изображения составляет 800 для сжатия lrz (that.files [0], {width: 800}) .thenction (function (rst) {// upload $ .ajax asynchronous после сжатия $ .ajax ({url : <%= request.getContextPath ()%>/common/fileuploadpiction, тип: post, data: {imgdata: rst.base64 // Сжатое базовое значение}, DataType: JSON, Cache: FALS E, Async: False, успех: Function (data) {if (data.success) {alert (data.message); Сообщение является причиной сбоя загрузки}}, error: function () {alert (upload не удастся);});});};} Шаг 4: Pring Spring MVC Controller получает базовые значения в фоновом режиме и файлах анализа и сохранения и сохранения Import sun.misc.base64decoder; upload (file ulive fileuploadpiction)] [Params: imgdata = +imgdata +]); Сохранить текущий файл root -root file file = новый файл (imgpath); ) [1]); ;}} outputstream.write (result); Результат (false, загрузка файла не удалась);} catch (Exception e) {logler.error ([fileupload)] [Ошибка: + e +]); ();Результат класс:
Импорт java.io.serializable; .success = успех; SetMessage (String Message) {this.message = сообщение;} @Override public String toString () {return result [success = + success +, message = + message +];}}Выше всего это шаги.