jcrop для двух изображений одновременно
Здравствуйте.
Из этого куска кода каким-то образом передается параметр для функции updateInfo, либо это закладено у самом плагине, либо то что находится у function(){}: ............ ............ ............ // initialize Jcrop $('#'+phot+'preview').Jcrop({ minSize: [250, 150], // min crop size aspectRatio : 1.6666666666666666, // keep aspect ratio 1:1 bgFade: true, // use fade effect bgOpacity: .3, // fade opacity onChange: updateInfo, onSelect: updateInfo, onRelease: clearInfo }, function(){ // use the Jcrop API to get the real image size var bounds = this.getBounds(); boundx = bounds[0]; bound = bounds[1]; // Store the Jcrop API in the jcrop_api variable jcrop_api = this; }); А вот и сама функция updateInfo: // update info by cropping (onChange and onSelect events handler) ffunction updateInfo(e) { $('#'+phot+' #x1').val(e.x); $('#'+phot+' #y1').val(e.y); $('#'+phot+' #x2').val(e.x2); $('#'+phot+' #y2').val(e.y2); $('#'+phot+' #w').val(e.w); $('#'+phot+' #h').val(e.h); }; Вопрос: как мне предать у функцию updateInfo параметр phot. Принимать наверное так updateInfo(e,phot), но где дописать чтобы отправить? // Делаю я это для того чтобы была возможность загружать одновременно два изображения и обрезать их. Полный пример если что: http://www.script-tutorials.com... |
Можно выйти из ситуации так
var jcrop_api = []; $(function(){ $('.image-resize').each(function(index, element) { var w = $(this).data('w'); var h = $(this).data('h'); var x1 = $(this).data('x1'); var x2 = $(this).data('x2'); var y1 = $(this).data('y1'); var y2 = $(this).data('y2'); var id = $(this).data('id'); var img = $(this).find('img'); $(img).Jcrop({ keySupport: false, }, function (){ var bounds = this.getBounds(); boundx = bounds[0]; bound = bounds[1]; jcrop_api[index] = this; }); }); }); my_func(){ // Можно пробежать все фотки и запросить их координаты console.log(jcrop_api[0].tellSelect()); // первая фотка } |
Часовой пояс GMT +3, время: 05:23. |