Прослушайте правую кнопку мыши (контекстное меню) в Ckeditor 5 - PullRequest
0 голосов
/ 16 октября 2018

Как прослушивать правую кнопку мыши (активацию контекстного меню) в Ckeditor 5, когда пользователь щелкает элемент в редакторе.

Для левой кнопки мыши я использую ClickObserver, который работает отлично, но ClickObserver неКажется, не работает для правой кнопки мыши

1 Ответ

0 голосов
/ 24 октября 2018

Согласно документу миграции CKEditor , опции контекстного меню удалены в CKEditor 5, и официальным стандартом является использование contextualToolbar .

CKEditor 5 не поставляется с контекстным меню, вместо него предлагается контекстная встроенная панель инструментов, предлагающая контекстные действия.

Обновление:

Я нашел хак, который вы могли бы использовать, но я бы не стал его рекомендовать. ИСПОЛЬЗУЙТЕ ЭТО НА СВОЙ СТРАХ И РИСК!

function onEditorMouseDown(evt) {
  if (evt.which == 3) {
    alert('You right clicked the editor!');
  }
}

var elem = document.querySelector('#editor1');
var cEditor = ClassicEditor
  .create(elem)
  .then(function(editor) {
    let container = editor.ui.view.editable.element;
    if (container) {
      container.addEventListener('mousedown', onEditorMouseDown);
    }
  })
  .catch(function(err) {
    console.error(err.stack);
  });
<script src="https://cdn.ckeditor.com/ckeditor5/11.1.1/classic/ckeditor.js"></script>
<h1>CKEditor 5 Example</h1>
<textarea id="editor1"></textarea>

Объяснение:

То, что я делаю здесь, - это поиск редактируемой области в редакторе и добавление событияслушатель события mousedown на элементе.

Надеюсь, это поможет!

...