Microsoft Word JavaScript API - обработчик событий для выделения текста в документе - PullRequest
0 голосов
/ 04 сентября 2018

Я прочитал JavaScript API для Office и не смог найти обработчик для уведомления, когда пользователь выбирает текст в текстовом документе.

Мне известно, что мы можем скопировать выделенный / выделенный текст из документа следующим образом:

Word.run(function(context) {
    let body = context.document.body;

    // ask for the user selected text
    let range = context.document.getSelection();
});

Этот подход не является зарегистрированным обратным вызовом или событием. При таком подходе у меня есть , чтобы запросить обновление или проверить, выбрал ли пользователь что-либо.

Существует ли существующая функция, которую я могу зарегистрировать для получения уведомлений о взаимодействии пользователя с документом?

Заранее спасибо за помощь

1 Ответ

0 голосов
/ 05 сентября 2018

метод getSelection () на самом деле не делает выбор в документе. он дает вам диапазон, который выбран в данный момент. чтобы получить события, которые вам нужны, чтобы подписаться на событие выбора документа, вы можете сделать это довольно просто, просто набрав:

function subscribeToEvent() {
    Office.context.document.addHandlerAsync(Office.EventType.DocumentSelectionChanged, handler);
}

function handler(evtArgs) { 
  // here you can handle the event. 
    console.log("select");
}

С другой стороны, метод range.select () будет инициировать событие изменения выбора, если вы хотите сделать это программно. Пожалуйста, посмотрите этот фрагмент Script Lab , он в основном подписывается на событие при загрузке, затем, если вы нажмете кнопку RUN, вы увидите, что выбран последний абзац и событие сработало.

...