Skip to content

Instantly share code, notes, and snippets.

@VSeryoga
Created November 19, 2018 15:46
Show Gist options
  • Save VSeryoga/a6ffefc3f77a43f55f085f85f0785d0a to your computer and use it in GitHub Desktop.
Save VSeryoga/a6ffefc3f77a43f55f085f85f0785d0a to your computer and use it in GitHub Desktop.
Сжатие изображений в браузере
$(document).ready(function() {
$('body').on('change', '.add_image_zamena input', function(){
var th = $(this);
var tr = $(th).parents('.reports-list-item');
var file = [];
file_temp = $(this)[0].files;
file[0] = file_temp[0];
const compress = new Compress();
compress.compress(file, {
size: .5,
quality: .75,
maxWidth: 1000,
maxHeight: 1000
}).then((results) => {
const img1 = results[0]
const base64str = img1.data
const imgExt = img1.ext
const fileB = Compress.convertBase64ToFile(base64str, imgExt)
var fileNorm = new File([fileB], results[0]['alt']);
var formData = new FormData();
$('body').css('cursor', 'progress');
$('#preloader').show();
formData.append("image", fileNorm);
formData.append("id", $(tr).attr('data-id'));
formData.append("id_basket", $(tr).attr('data-basket-id'));
formData.append("id_site", $(tr).attr('data-site_id'));
formData.append("id_order", $(tr).attr('data-order_id'));
$.ajax({
type: "POST",
processData: false,
contentType: false,
url: "/local/ajax/savefile.php",
data: formData
})
.done(function( data ) {
$(th).parents('td').find('.add_image_zamena').before('<a target="_blank" href="' + data + '" class="fancybox"><img width="120" src="' + data + '"></a>');
$('body').css('cursor', 'inherit');
$('.fancybox').fancybox();
$('#preloader').hide();
});
})
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment