jCrop (jQuery) иногда не может загрузить область изображения / обрезки

У меня довольно простая проблема, но я не знаю, что вызывает проблему. В одном из своих приложений я использую jCrop в качестве небольшого дополнения для обрезки изображений, чтобы они помещались в баннеры / заголовки и т. Д. Будут предприняты следующие шаги:

1) Select an image (using CKFinder for this, CKFinder returns the image path to an input field)
2) Click a button to load the image
3) Crop the image
4) Save the image

примерно в 75% случаев все идет по плану, однако в остальных 25% случаев jCrop не загружает область обрезки и оставляет ее пустой. Вот код jQuery, который я использую:

jQuery('#selectimg').live('click', function(e) { 
  e.preventDefault();
  var newsrc = jQuery('#img2').val();
  jQuery('#cropbox').attr('src', newsrc);
  var jcrop_api = jQuery.Jcrop('#cropbox', {
    boxWidth: 700, 
    boxHeight: 700,
    onSelect: updateCoords,
    onChange: updateCoords
  });
  //Some other JS code come's here for buttons (they work all the time)
});

Я заметил, что, когда я оставил ту часть, где #cropbox трансформируется в посевную область, что изображение загружается нормально, поэтому ошибка связана с частью var = jcrop_api , но я медленно начинаю думать, что для этого нет решения ...

Это то, что я пробовал до сих пор:

Создание div

и использование jQuery ('# cropper-box'). append (' '); и затем установите значение. Я попробовал то же самое, но установил src изображения за 1 шаг, а не потом.

Я попытался разместить заполнитель на странице и измените источник, нажав кнопку. Это работает, но область кадрирования сохраняет размер изображения (300x180 пикселей или что-то в этом роде) и не становится больше, как должно.

// Правка:

Еще несколько попыток показали мне, что источник изображения заменяется правильно (! С использованием Firefox для отображения источника выбранного текста), я дважды проверил URL-адрес, но это был правильный URL-адрес и рабочее изображение.

В том месте, где должна быть обрезка, есть белое пятно размером примерно 10x10 пикселей, где появляется значок обрезки (знак плюса) ... но, как было сказано ранее: изображение не отображается.

// Редактировать 2:

Итак, я взял исходники и для 1-й, и для 2-й попытки для одного и того же изображения. Как было сказано перед первой попыткой, изображение не загрузится должным образом, а вторая попытка загрузится (только если вторая попытка - это то же изображение (!!)).

Выбранный источник страницы показывает одно различие, то есть сначала попробуйте :

<img style="position: absolute; width: 0px; height: 0px;" src="http://95.142.175.17/uploads/files/Desert.jpg">

вторая попытка:

<img style="position: absolute; width: 700px; height: 525px;" src="http://95.142.175.17/uploads/files/Desert.jpg">

Я думаю, это изображение заменяется jCrop, но это ' Это полная загадка, почему в первый раз ставится 0 высота / ширина, а во второй раз правильный размер.

16
задан Joshua - Pendo 9 May 2011 в 13:57
поделиться