Мой проект использует:
jQuery v3.6.4, Bootstrap v4.0.0 , & cropper.js v1.5.12 .
in cropper.js v1.5.12, в самых популярных родительских дивизациях коробки классов Cropper-Container Cropper-bg . Высота каждого из этих div увеличивается по мере того, как я пробегаю через несколько изображений, чтобы создать экземпляр коробки обрезки для каждого изображения. Например, 4 изображения, каждое из которых имела ширину 679px и высоту 960px. Когда я прошел через изображения, у первого .cropper-container высота 2849px; 2 -й имел высоту 4991PX; 3 -й имел высоту 9275px; и у 4 -го была высота 17843px. Однако, если я не пробегаю через несколько изображений и что изображение только одно, высота .cropper-container составляет 728px для изображения, имеющего ширину 679px и высоту 960px. Это идеально подходило для изображения (не слишком длинного или короткого для изображения), так как визуализованная ширина изображения составила 500px. В чем может быть проблема и что может быть исправлением?$('#image-upload').change(function(event){
const files = this.files;
if (!files.length) return;
$('#modal-outermost').modal({
backdrop: 'static',
keyboard: false
});
let imageClass = 'images';
let retrievedImageSrc = '';
$.each(files, function (index, file){
const reader = new FileReader();
reader.onload = function (e) {
let imgSrc = e.target.result;
$('.images').each(function(){
retrievedImageSrc = $(this).attr('src');
if(!retrievedImageSrc.length){
$(this).attr('src', imgSrc);
return false;
}
});
};
reader.readAsDataURL(file);
});
});
js для добавления экземпляра Cropper в каждое изображение в модале начальной загрузки
$modal.on('shown.bs.modal', function(){
const images = document.querySelectorAll('.images');
let numImages = images.length;
const croppers = [];
let i;
for (i = 0; i < numImages; i++) {
croppers.push(new Cropper(images, {
aspectRatio: NaN,
viewMode: 2,
preview:'.preview',
dragMode: 'move',
cropBoxResizable: true,
minCropBoxWidth: 320,
minCropBoxHeight: 240,
data:{
width: 640,
height: 480
}
}));
}
});
Модал Booststrap находится в структуре HTML, как SO:
Crop
Cancel
Crop
Cancel
Единственное пользовательское CSS, которое может повлиять на Cropper.js, - это:
img{
display: block;
max-width: 100%;
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... -through-m
Почему Countper.js '.cropper-Container увеличивается в высоте, когда я пробираюсь через несколько изображений? [закрыто] ⇐ Jquery
Программирование на jquery
1747416976
Anonymous
Мой проект использует:
jQuery v3.6.4, Bootstrap v4.0.0 , & cropper.js v1.5.12 .
in cropper.js v1.5.12, в самых популярных родительских дивизациях коробки классов Cropper-Container Cropper-bg . Высота каждого из этих div увеличивается по мере того, как я пробегаю через несколько изображений, чтобы создать экземпляр коробки обрезки для каждого изображения. Например, 4 изображения, каждое из которых имела ширину 679px и высоту 960px. Когда я прошел через изображения, у первого .cropper-container высота 2849px; 2 -й имел высоту 4991PX; 3 -й имел высоту 9275px; и у 4 -го была высота 17843px. Однако, если я не пробегаю через несколько изображений и что изображение только одно, высота .cropper-container составляет 728px для изображения, имеющего ширину 679px и высоту 960px. Это идеально подходило для изображения (не слишком длинного или короткого для изображения), так как визуализованная ширина изображения составила 500px. В чем может быть проблема и что может быть исправлением?$('#image-upload').change(function(event){
const files = this.files;
if (!files.length) return;
$('#modal-outermost').modal({
backdrop: 'static',
keyboard: false
});
let imageClass = 'images';
let retrievedImageSrc = '';
$.each(files, function (index, file){
const reader = new FileReader();
reader.onload = function (e) {
let imgSrc = e.target.result;
$('.images').each(function(){
retrievedImageSrc = $(this).attr('src');
if(!retrievedImageSrc.length){
$(this).attr('src', imgSrc);
return false;
}
});
};
reader.readAsDataURL(file);
});
});
[b] js для добавления экземпляра Cropper в каждое изображение в модале начальной загрузки [/b]
$modal.on('shown.bs.modal', function(){
const images = document.querySelectorAll('.images');
let numImages = images.length;
const croppers = [];
let i;
for (i = 0; i < numImages; i++) {
croppers.push(new Cropper(images[i], {
aspectRatio: NaN,
viewMode: 2,
preview:'.preview',
dragMode: 'move',
cropBoxResizable: true,
minCropBoxWidth: 320,
minCropBoxHeight: 240,
data:{
width: 640,
height: 480
}
}));
}
});
[b] Модал Booststrap находится в структуре HTML, как SO: [/b]
Crop
Cancel
Crop
Cancel
[b] Единственное пользовательское CSS, которое может повлиять на Cropper.js, - это: [/b]
img{
display: block;
max-width: 100%;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79624241/why-does-cropper-js-cropper-container-increase-in-height-when-i-loop-through-m[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия