Почему мы не можем щелкнуть правой кнопкой мыши вставить в TinyMCE с плагином вставки в Firefox?

Кажется, невозможно скопировать текст, а затем вставить его в редактор TinyMCE, используя вставку правой кнопкой мыши в Firefox, если у вас есть плагин «вставить». Почему это?

Я использую:

  • Firefox 33.1.1 (хотя пользователи жаловались на проблему с FF 29)
  • TinyMCE 4.1.1 с плагином «вставить»

Я могу щелкнуть правой кнопкой мыши и вставить в них без ошибок:

  • элемент с атрибутом contenteditable="true" (тот же метод, что и у TinyMCE), проверенный на http://html5demos.com/contenteditable
  • обычное текстовое поле
  • TinyMCE 4.1.1 без плагина "вставить"

Пользователи обсуждали на форум TinyMCE еще в 2007 году, и упомянуть предупреждение о том, что «Копирование/вырезание/вставка недоступно в Mozilla и Firefox», которого я не получаю с FF 33. Никто не упоминает, почему возникает эта проблема, и администраторы TinyMCE утверждают, что «это это не ошибка». Мне интересно узнать, какие изменения были внесены в Firefox или TinyMCE, которые вызывают это, и почему (безопасность?).

Этот вопрос -- вставка мыши Tinymce не работает -- содержит ответ о том, как исправить проблема: удалите плагин «contextarea» или любой плагин, основанный на нем. Но мне интересно узнать, почему это происходит в первую очередь.


person Luke    schedule 20.11.2014    source источник


Ответы (1)


Сотрудник навел меня на правильный путь, и я нашел эти две ссылки:

https://developer.mozilla.org/en-US/Firefox/Releases/29/Site_Compatibility#Security

Удаление поддержки политики allowclipboard сломало кнопки копирования/вставки в некоторых текстовых редакторах, таких как CKEditor. В ближайшем будущем будет реализована поддержка копирования по щелчку в стандартном API буфера обмена. Общие сочетания клавиш Ctrl+C и Ctrl+V всегда должны работать.

http://kb.mozillazine.org/Granting_JavaScript_access_to_the_clipboard

По умолчанию JavaScript не может читать или устанавливать данные вашего буфера обмена из соображений безопасности и конфиденциальности. Это связано с тем, что скрипты веб-сайтов могут стирать и заменять то, что у вас есть в буфере обмена (проблема потери данных), и они могут читать все, что у вас есть в буфере обмена (проблема безопасности и конфиденциальности); как таковой, вы должны предоставлять доступ с осторожностью.

Возможно, кто-то с опытом работы с TinyMCE может предоставить больше информации о том, как он получает доступ к буферу обмена.

Хорошими дополнительными вопросами могут быть: Почему другие браузеры этого не делают? Почему ctrl+v безопаснее?

person Luke    schedule 20.11.2014