Как обнаружить курсор, входящий и выходящий из таблицы, используя идентификатор элемента управления контентом - PullRequest
0 голосов
/ 16 октября 2019

Я работаю над надстройкой слов с помощью office js. У меня есть требование определить, вошел ли пользователь во время просмотра и вышел ли он из таблицы. Я создал таблицу под управлением контентом. Что мне нужно реализовать, если я щелкаю / помещаю курсор с помощью клавиши в любом столбце таблицы, тогда значение глобальной переменной изменится на true, а когда курсор выйдет за пределы этой таблицы, переменная изменится на false, и я буду считать, что пользователь внес некоторые изменения втаблицу (даже если их на самом деле нет), и я сохраню весь документ.

Используя метод ниже, я могу обнаружить общее событие перемещения курсора.

        Office.context.document.addHandlerAsync("documentSelectionChanged", mySelectionHandler,
            function (result) {
                //write(result.value)
            }
        );

Однако я не могНе могу найти какой-либо механизм, чтобы утверждать, что мой курсор находится внутри таблицы или вне этой таблицы. Не могли бы вы помочь в этом?

1 Ответ

0 голосов
/ 16 октября 2019

Вы можете попробовать использовать getSelection , чтобы получить объект Range, в котором находится курсор в данный момент. Затем вызовите свойства parentTableOrNullObject или parentContentControlOrNullObject объекта Range, чтобы определить, находится ли курсор в элементе управления таблицей / содержимым. Затем используйте свойства id или title, чтобы определить таблицу, в которой находится курсор.

...