2012-11-08 8 views
18

Przeciąganie elementów do przeglądarka jest dość dobrze udokumentowana, a HTML5 ułatwia to.Przeciąganie i upuszczanie * FROM * przeglądarki?

Zastanawiam się jednak, czy iw jaki sposób można przeciągnąć 'n' drop z poziomu przeglądarki.

W tym scenariuszu, trzeba element strony internetowej (np. Kotwica), które użytkownik może kliknąć & przeciągnij OUT z przeglądarką na cel upuszczania, a przeglądarka wyśle ​​połączony obiekt (np. plik href) bezpośrednio do miejsca docelowego upuszczania zamiast uruchamiania zwykłego pobierania.

Czy ktoś wie, czy jest to możliwe?

+0

Nie, zdecydowanie nie jest. – woz

+1

@woz: Jestem prawie pewien, że tak jest. Spróbuj przeciągnąć link do pliku .mp3 lub coś takiego, czy nie pobierze pliku do tej lokalizacji? A może po prostu tworzy link na pulpicie? –

+1

@MadaraUchiha To nie działa dla mnie. Przeciąganie i upuszczanie z witryny internetowej na komputer byłoby tak dużym problemem z bezpieczeństwem, że wątpię, czy kiedykolwiek zostanie zaimplementowane. – woz

Odpowiedz

3

Konceptualnie Tak, jest to możliwe. Ale to OS/aplikacja zajmująca się kroplą zdecyduje, co z nią zrobić. W rzeczywistości możesz zrobić dokładnie to, co opisujesz za pomocą chrome. Otwórz nowe okno chrome i przeciągnij do niego link. Porusza się tam. Przeciągnij link do swojego pulpitu. W Win7 tworzy skrót/link do tej strony.

To, o czym mówisz, to nie przeciąganie i upuszczanie HTML, ale w rzeczywistości na poziomie systemu operacyjnego/aplikacji. I musiałby być obsługiwany za pomocą języka aplikacji, a nie kodu HTML przeglądarki.

9

To, co próbujesz zrobić, można znaleźć tutaj: http://www.thecssninja.com/javascript/gmail-dragout.

To jest wyjaśnienie, jak przeciągnąć znacznik zakotwiczenia na pulpit, a plik zostanie tam pobrany. (Lub przeciągnij znacznik zakotwiczenia na inną aplikację, a system operacyjny będzie go odpowiednio traktować.)

Czego jeszcze nie odkryłem, to jak przeciągać i upuszczać wiele linków (zamiast tylko jednego naraz) za pośrednictwem HTML5, bez konieczności uciekania się do zewnętrznej biblioteki zasobów, takiej jak jquery.

+0

To był Dropbox, który doprowadził mnie do tego pytania. Zauważyłem, że za pomocą aplikacji internetowej można przeciągnąć pojedyncze pliki, ale nie wyróżnić wielu plików, a następnie pobrać je wszystkie. To mnie rozczarowało. Nie mogę myśleć, jak by to się stało. Czy jQuery może jakoś to przechwycić i przesłać osobno każde łącze plików do systemu operacyjnego (to znaczy jedno po drugim)? Bardzo podobało mi się podobne wymaganie w aplikacji internetowej, nad którą pracuję. –

+0

@RyanWilliams można wygenerować łącze, które zawiera identyfikatory każdego pliku i wykonać zdarzenie pobierania dla pojedynczego pliku, który jest zasadniczo zip każdego wybranego pliku w jednym pakiecie. Nie sądzę, że możesz utworzyć wiele pobrań z pojedynczego zdarzenia (nie próbowałem tego, ale planuję samemu zrobić metodę zip). – JustinN

+0

Ten artykuł jest świetny, ale jeśli chcesz to zrobić w lokalnym środowisku. Mam lokalną aplikację Angular2/Node, która monitoruje pamięć masową. Chcę przeciągnąć i upuścić plik z mojego interfejsu GUI do innej aplikacji. Wydaje się prawie, że to zadziała, oprócz tego, że faktycznie przesyła plik, po prostu chcę przesłać dowiązanie symboliczne. Ktoś to widział? – JasonPerr

Powiązane problemy