Я использую для предварительного просмотра файла bootstrap-fileinput.js
автор Arnold Daniels. И для обрезки jquery.Jcrop.js
Келли Халмэн.Crop только что добавил картинку
bootstrap-fileinput
для просмотра в режиме реального времени только что выбраного изображения, вставить в изображение src
URL-адрес закодированных данных. Что-то вроде этого data:image/png;base64,iVBORw.......
Когда пользователь выбирает фотографию и получает предварительный просмотр в прямом эфире, я хотел разрешить их обрезать это изображение. Я попытался сделать это с помощью дополнительной кнопки: когда пользователь выбрал изображение, он получит предварительный просмотр в реальном времени, а когда они нажмут кнопку «обрезать», то для просто добавленного изображения будет инициализирован сценарий Jcrop
. ($img_wrapper.find('img').Jcrop({});
). И это работает, все отлично.
Но когда я пытаюсь сделать то же самое, не нажимая кнопку «обрезать», но автоматически после выбора файла, он не работает. Насколько я понимаю, jQuery не видит нового изображения.
Я пробовал с событием on.('click', func...
, и это не работает. Затем я нашел в документации (http://jasny.github.io/bootstrap/javascript/#fileinput), что Jcrop
предоставляет свой собственный слушатель on.('change.bs.fileinput', funct...
, но он все еще не работает. Так что с кнопкой «crop» отлично работает, автоматически не работает, почему?
Так, что, как он работает: (попробуйте выберите изображение, нажмите "урожай", и вы можете обрезать изображение) http://jsfiddle.net/8f44yo9v/2/
Но тот путь, не работает: http://jsfiddle.net/o7tbr6mo/
Для действия '$ (# file-input) .on ('change', funct ...' тот же результат, не инициализируйте урожай только для добавленного изображения. – kxc