Перетащите изображение в веб-форму - PullRequest
9 голосов
/ 19 февраля 2009

У нас есть веб-страница (в основном HTML javascript и PHP), которая позволяет пользователю загружать изображения. У нас есть нормальная кнопка просмотра, и она отлично работает. Однако мы хотим добавить функциональность для перетаскивания изображения в текстовое поле.

Gmail позволяет вам делать это в своем почтовом приложении, так что это возможно. Единственный способ сделать это - создать Java-апплет, который делает все это, но в итоге получается очень грязно.

Кто-нибудь сделал это? как это работает?

Редактировать: Я использую Firefox на Mac. Большинство моих пользователей, вероятно, будут использовать IE в Windows.

спасибо

Ответы [ 8 ]

2 голосов
/ 20 апреля 2012

Это старый вопрос, но он появился в моих результатах поиска.

Так что для справки используйте классы файлов HTML5 и Drag and Drop.

Статья с деталями здесь: http://www.html5rocks.com/en/tutorials/file/dndfiles/

2 голосов
/ 19 февраля 2009

Вы можете сделать это в XUL (что делает его эффективным решением для Firefox) или в ActiveX (решение только для IE).

1 голос
/ 19 февраля 2009

Я пытался перетащить капли и изображение их редактора. Он выберет путь, если файл находится на веб-странице, но если он находится на вашем локальном диске, путь будет «file: // c: ....», который не будет загружен вместе с сообщением и будет в конечном итоге как разбитое изображение.

Браузер не имеет доступа к локальной файловой системе по соображениям безопасности, поэтому я сомневаюсь, что это когда-нибудь сработает так, как вы описали.

0 голосов
/ 16 апреля 2010

Ознакомьтесь с SWELL Framework. Его на основе JavaScript.

0 голосов
/ 21 февраля 2009

У вас случайно установлено это расширение Firefox?

http://www.teslacore.it/wiki/index.php?title=DragDropUpload

Я был бы удивлен, если есть решение без необходимости устанавливать внешний плагин или расширение. Как кто-то упомянул, это будет проблемой безопасности. Веб-сайт сможет получать файлы с компьютеров людей и загружать их без их ведома.

0 голосов
/ 21 февраля 2009

Я думаю, что у меня есть способ обойти досадные проблемы с локальной файловой системой FF3, но мне нужен кусок JavaScript для тестирования. Как мне прочитать локальный путь к файлу из формы загрузки файла? Пожалуйста, остановитесь на «вспышка - это решение». По профессии я разработчик Flash, и даже не думаю, что это хорошее решение.

0 голосов
/ 19 февраля 2009

лучший способ сделать это - сделать Adobe AIR автономным, например, загрузчик фотографий для https://www.photoshop.com/express


Вы можете найти отличную информацию в этом посте: http://devzone.zend.com/article/3650-Desktop-Image-Uploaders-Using-Adobe-AIR-and-JavaScript

0 голосов
/ 19 февраля 2009

Удаление файла в обычное поле ввода скопирует локальный путь к изображению в поле ввода, однако это бесполезно для вас, так как свойство .value тега только для чтения для безопасности причины.

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

Я думаю, что вы хотите спросить: "как мне стилизовать тег как google" , который является совершенно другой темой.

РЕДАКТИРОВАТЬ: Хорошо, в IE вы не можете перетащить файл в тег

...