Schowek na żywo
Deweloperzy | Microsoftu |
---|---|
Wersja podglądu | 0,93 |
Typ | Wytnij, skopiuj i wklej |
Licencja | Darmowe |
Strona internetowa |
Live Clipboard to rozszerzalny format danych i zestaw technologii interfejsu użytkownika używanych do obsługi operacji kopiowania/wklejania między aplikacjami internetowymi w przeglądarkach oraz między aplikacjami internetowymi i komputerowymi. W przeciwieństwie do typowego sposobu kopiowania/wklejania w przeglądarkach, mechanizm Live Clipboard nigdy nie musi wyświetlać użytkownikowi końcowemu okna dialogowego bezpieczeństwa, zapewniając w ten sposób bardziej usprawnioną obsługę.
Live Clipboard jest objęty licencją Creative Commons Attribution-ShareAlike License (wersja 2.5). Od końca 2009 roku zaktualizowaną specyfikację, pliki JavaScript i przykładowy kod można znaleźć tutaj:
Wprowadzenie techniczne do DHTML
Live Clipboard DHTML zapewnia funkcję kopiowania/wklejania danych powiązanych ze stroną internetową przy użyciu formatu danych Live Clipboard XML. Składa się z następujących elementów:
- Elementy interfejsu użytkownika służące do wyświetlania ikony Schowka na żywo
- Obiekty Javascript reprezentujące model obiektowy Live Clipboard
- JavaScript, który obsługuje serializację i deserializację danych XML Live Clipboard
- Rejestracja funkcji wywołania zwrotnego Javascript do pobierania danych do kopiowania i wypychania danych do wklejania.
Został zaprojektowany tak, aby wykorzystywać standardowe techniki JavaScript i CSS w celu „przeniesienia schowka do sieci” i działać w jak największej liczbie przeglądarek. Obecnie zweryfikowano, że działa w IE 8 i Mozilla Firefox 3.5.2. Kontrola nie zależy od instalacji żadnych aplikacji po stronie klienta ani wtyczek do przeglądarek i nigdy nie uzyskuje dostępu do zawartości schowka bez wyraźnej akcji użytkownika.
Jak to działa
Formant umieszcza przezroczysty (nieprzezroczystość = 0) element wejściowy w zawierającym element div
z obrazem tła .png ikony schowka. Gdy użytkownik ustawia fokus na wejściu, klikając go lewym lub prawym przyciskiem myszy, używając tabulatora itp., skrypt sterujący pobiera dane, które należy skopiować, wywołując funkcję OnGetLiveClipboardData. Ta funkcja wywołania zwrotnego jest implementowana przez twórcę strony i zwraca instancję LiveClipboardClass zawierającą dane, które powinny zostać skopiowane do schowka. Następnie skrypt sterujący serializuje te dane do formatu Live Clipboard XML, który ustawia jako wartość elementu wejściowego i wybiera.
W tym momencie, jeśli użytkownik wyda polecenie „kopiuj” za pomocą menu kontekstowego, menu edycji przeglądarki, polecenia ctrl-C itp., wybrana zawartość danych wejściowych zostanie umieszczona w schowku. Alternatywnie, jeśli użytkownik wyda polecenie „wklej”, wartość wejściowa zostanie zastąpiona aktualnymi danymi ze schowka. W takim przypadku skrypt sterujący wykrywa, że wartość wejściowa uległa zmianie, dokonuje deserializacji wartości z formatu Live Clipboard XML do instancji LiveClipboardClass i przekazuje obiekt do funkcji OnHandleLiveClipboardData.
Funkcja wywołania zwrotnego wklejania jest implementowana przez twórcę strony i odpowiada na wklejone dane zgodnie z życzeniem. W szczególności może iterować przez obecne formaty danych, stosować dane w dowolnym uznanym formacie (formatach) do strony, wykonywać asynchroniczne wywołanie do serwera WWW w celu zachowania stanu, konfigurować nową subskrypcję kanału itp. nic nie robić, na przykład gdy żaden z formatów we wklejonych danych nie jest prawidłowy dla powiązanych danych.
Istnieją mechanizmy używania zdarzeń klawiatury do wyzwalania kopiowania/wklejania. Jest to realizowane przez wywołanie funkcji InitiateKeyboardCopyToLiveClipboard i InitiateKeyboardPasteFromLiveClipboard.