Живой буфер обмена - Live Clipboard

Живой буфер обмена
Логотип Live Clipboard
Разработчики)Microsoft
Предварительный выпуск
0.93
ТипВырезать, скопировать и вставить
ЛицензияБесплатное ПО
Интернет сайткод.msdn.microsoft.com/ liveclipboard/

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

Live Clipboard находится под лицензией Creative Commons Attribution-ShareAlike License (версия 2.5). По состоянию на конец 2009 года обновленную спецификацию, файлы Javascript и образец кода можно найти здесь:[1][2]

Техническое введение в DHTML

DHTML с динамическим буфером обмена обеспечивает функцию копирования / вставки данных, связанных с веб-страницей, с использованием формата данных XML с динамическим буфером обмена. Он состоит из следующих компонентов:

  • Элементы пользовательского интерфейса для отображения значка динамического буфера обмена
  • Объекты Javascript, представляющие объектную модель Live Clipboard
  • Javascript, который обрабатывает сериализацию и десериализацию XML-данных Live Clipboard
  • Регистрация функции обратного вызова Javascript для получения данных для копирования и отправки данных для вставки.

Он разработан с использованием стандартных методов Javascript и CSS для «переноса буфера обмена в Интернет» и для работы в максимально возможном количестве браузеров. В настоящее время проверена работа в IE 8 и Mozilla Firefox 3.5.2. Управление не зависит от установки каких-либо клиентских приложений или подключаемых модулей браузера, и он никогда не получает доступ к содержимому буфера обмена без явных действий пользователя.

Как это устроено

Элемент управления помещает прозрачный (непрозрачность = 0) элемент ввода в содержащий div элемент с фоновым изображением значка буфера обмена .png. Когда пользователь переводит фокус на ввод, щелкая его левой или правой кнопкой мыши, используя табуляцию и т. Д., Сценарий управления получает данные, которые следует скопировать, вызывая функцию OnGetLiveClipboardData. Эта функция обратного вызова реализуется разработчиком страницы и возвращает экземпляр LiveClipboardClass, содержащий данные, которые должны быть скопированы в буфер обмена. Затем управляющий сценарий сериализует эти данные в XML-формат Live Clipboard, который он устанавливает как значение входного элемента и выбирает.

На этом этапе, если пользователь выдает команду «скопировать» через контекстное меню, меню редактирования браузера, ctrl-C команда и т. д., выбранное содержимое ввода помещается в буфер обмена. Или же, если пользователь выдает команду «вставить», значение ввода заменяется текущими данными в буфере обмена. В этом случае управляющий сценарий обнаруживает, что входное значение изменилось, десериализует значение из формата XML Live Clipboard в экземпляр LiveClipboardClass и передает объект в функцию OnHandleLiveClipboardData.

Функция обратного вызова вставки реализуется разработчиком страницы и реагирует на вставленные данные по желанию. В частности, он может перебирать существующие форматы данных, применять данные в любом распознанном формате (-ах) к странице, выполнять асинхронный вызов веб-сервера для сохранения состояния, настраивать новую подписку на канал и т. Д. ничего не делать, например, когда ни один из форматов вставленных данных не подходит для связанных данных.

Существуют механизмы использования событий клавиатуры для запуска копирования / вставки. Это достигается путем вызова функций InitiateKeyboardCopyToLiveClipboard и InitiateKeyboardPasteFromLiveClipboard.

Рекомендации

  1. ^ «Живой буфер обмена».
  2. ^ Аррингтон, Майкл (7 марта 2006 г.). «Буфер обмена Microsoft Live -» Подключение Интернета"". TechCrunch.

внешняя ссылка