Раздел событий позволяет изменить все функции, относящиеся к событиям.
- button
- init
- inputHelper_onSelectItem
- onBlurContentControl
- onChangeContentControl
- onClick
- onCommandCallback
- onDocumentContentReady
- onEnableMouseEvent
- onExternalMouseUp
- onExternalPluginMessage
- onFocusContentControl
- onInputHelperClear
- onInputHelperInput
- onMethodReturn
- onTargetPositionChanged
- onTranslate
События и их описание:
- button — функция, вызываемая при нажатии любой из кнопок плагина. Он определяет кнопки, используемые с плагином, и поведение плагина при нажатии на них.Параметры
Параметр Описание Тип id Определяет индекс кнопки в массиве кнопок файла config.json. Если id == -1, то плагин считает, что крестик Закрыть окно был нажат или его работа была каким-то образом прервана. численный Примерwindow.Asc.plugin.button = function (id) { this.executeCommand("close", ''); };
- init — функция, вызываемая при запуске плагина. Он определяет данные, отправляемые в плагин, описывающие, какие действия должны быть выполнены и как они должны быть выполнены.Параметры
Параметр Описание Тип data Определяет параметр данных, зависящий от параметра initDataType, указанного в файле config.json. строковый Примерwindow.Asc.plugin.init = function () { this.callCommand(function() { var oDocument = Api.GetDocument(); var oParagraph = Api.CreateParagraph(); oParagraph.AddText("Hello world!"); oDocument.InsertContent([oParagraph]); }, true); };
- inputHelper_onSelectItem — функция, вызываемая, когда пользователь пытается выбрать элемент из помощника ввода.Параметры
Параметр Описание Тип item Определяет выбранный элемент: - text — текст предмета,
тип: строковый,
пример: «name»; - id — индекс предмета,
тип: строковый,
пример: «1».
объект Примерwindow.Asc.plugin.inputHelper_onSelectItem = function(item) { if (!item) return; window.Asc.plugin.executeMethod("InputText", [item.text, window.Asc.plugin.currentText]); window.Asc.plugin.getInputHelper().unShow(); };
- text — текст предмета,
- onBlurContentControl — функция, вызываемая, чтобы показать, какой элемент управления содержимым был размыт.Параметры
Параметр Описание Тип control Определяет элемент управления содержимым, который был размыт: - Tag -тег, назначенный элементу управления содержимым. Один и тот же тег можно назначить нескольким элементам управления содержимым, чтобы вы могли ссылаться на них в своем коде.
type: строковый,
example: «{tag}»; - Id — уникальный идентификатор управления контентом. Его можно использовать для поиска определенного элемента управления содержимым и ссылки на него в коде.
type: численный,
example: 0; - Lock — значение, которое определяет, возможно ли удалить и/или изменить элемент управления содержимым или нет,
type: численный,
example: 0; - InternalId — уникальный внутренний идентификатор элемента управления контентом,
type: строковый,
example: «5_665».
Объект Параметр Lock может принимать следующие значения:
Численное значение Редактировать Удалить 0 нет да 1 нет нет 2 да нет 3 да да Примерconnector.attachEvent("onBlurContentControl", function(oPr) { if (oPr && "BankBIC" === oPr["Tag"]) { connector.executeMethod("GetFormValue", [oPr["InternalId"]], function(value) { if ("12345678" !== value) return; connector.executeMethod("GetFormsByTag", ["BankAccount"], function(forms) { for (let i = 0; i < forms.length; ++i) { connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "10101110100000000123"], null); } }); connector.executeMethod("GetFormsByTag", ["BankName"], function(forms) { for (let i = 0; i < forms.length; ++i) { connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "Р7 BANK"], null); } }); connector.executeMethod("GetFormsByTag", ["BankPlace"], function(forms) { for (let i = 0; i < forms.length; ++i) { connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "Himalayas"], null); } }); }); } console.log("event: onBlurContentControl"); });
- Tag -тег, назначенный элементу управления содержимым. Один и тот же тег можно назначить нескольким элементам управления содержимым, чтобы вы могли ссылаться на них в своем коде.
- onChangeContentControl — функция, вызываемая, чтобы показать, какой элемент управления содержимым был изменен.Параметры
Параметр Описание Тип control Определяет измененный элемент управления содержимым: - Tag — тег, назначенный элементу управления содержимым. Один и тот же тег можно назначить нескольким элементам управления содержимым, чтобы вы могли ссылаться на них в своем коде.
type: строковый,
example: «{tag}»; - Id — уникальный идентификатор управления контентом. Его можно использовать для поиска определенного элемента управления содержимым и ссылки на него в коде.
type: численный,
example: 0; - Lock — значение, которое определяет, возможно ли удалить и/или изменить элемент управления содержимым или нет,
type: численный,
example: 0; - InternalId — уникальный внутренний идентификатор элемента управления контентом,
type: строковый,
example: «5_665».
объект Параметр Lock может принимать следующие значения:
Численные значения Редактировать Удалить 0 нет да 1 нет нет 2 да нет 3 да да Примерconnector.attachEvent("onChangeContentControl", function() { console.log("event: onChangeContentControl"); });
- Tag — тег, назначенный элементу управления содержимым. Один и тот же тег можно назначить нескольким элементам управления содержимым, чтобы вы могли ссылаться на них в своем коде.
- onClick — функция, вызываемая, когда пользователь нажимает на элемент.Параметры
Параметр Описание Тип isSelectionUse Определяет, используется ли выделение или нет. логический Примерwindow.Asc.plugin.event_onClick = function(isSelectionUse) { window.Asc.plugin.executeMethod("GetCurrentContentControlPr", [], function(obj) { window.Asc.plugin.currentContentControl = obj; var controlTag = obj ? obj.Tag : ""; if (isSelectionUse) controlTag = ""; ... }); };
- onCommandCallback — функция, вызываемая для возврата результата ранее выполненной команды. Его можно использовать для возврата данных после выполнения метода executeCommand.Пример
window.Asc.plugin.onCommandCallback = function() { var plugin = window.Asc.plugin; plugin.executeCommand("close", ""); };
- onDocumentContentReady -функция вызывается, когда документ полностью загружен.Пример
window.Asc.plugin.event_onDocumentContentReady = function() { var oProperties = { "searchString" : "Р7", "replaceString" : "Р7 is cool", "matchCase" : false }; window.Asc.plugin.executeMethod("SearchAndReplace", [oProperties], function() { window.Asc.plugin.executeCommand("close", ""); }); };
- onEnableMouseEvent — функция, вызываемая для включения/выключения событий мыши или тачпада.Параметры
Параметр Описание Тип isEnabled Определяет, включена ли мышь или тачпад. логический Примерwindow.Asc.plugin.onEnableMouseEvent = function(isEnabled) { var _frames = document.getElementsByTagName("iframe"); if (_frames && _frames[0]) { _frames[0].style.pointerEvents = isEnabled ? "none" : ""; } };
- onExternalMouseUp -функция, вызываемая при отпускании кнопки мыши за пределами iframe плагина.Пример
window.Asc.plugin.onExternalMouseUp = function () { var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("mouseup", true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null); document.dispatchEvent(evt); };
- onExternalPluginMessage — функция, вызываемая для отображения сообщения интегратора редактора.Параметры
Параметр Описание Тип data Определяет сообщение интегратора редактора: - Тип -тип сообщения,
тип: строковый,
пример: «close»; - text — текст сообщения,
тип: строковый,
пример: «text».
объект Примерwindow.Asc.plugin.onExternalPluginMessage = function(data) { switch (data.type) { case "close": { this.executeCommand("close", ""); break; } case "insertText": { Asc.scope.text = data.text; this.callCommand(function() { var oDocument = Api.GetDocument(); var oParagraph = Api.CreateParagraph(); oParagraph.AddText(Asc.scope.text); oDocument.InsertContent([oParagraph]); }, false); break; } } };
- Тип -тип сообщения,
- onFocusContentControl — функция, вызываемая для отображения того, какой элемент управления содержимым был сфокусирован.Параметры
Параметр Описание Тип control Определяет элемент управления содержимым, который был сфокусирован: - Tag — тег, назначенный элементу управления содержимым. Один и тот же тег может быть назначен нескольким элементам управления контентом, чтобы вы могли ссылаться на них в своем коде,
type: строковый,
example: «{tag}»; - Id -уникальный идентификатор элемента управления контентом. Его можно использовать для поиска определенного элемента управления контентом и ссылки на него в вашем коде,
type: численный,
example: 0; - Lock — значение, определяющее, можно ли удалять и/или редактировать элемент управления содержимым или нет,
type: численный,
example: 0; - InternalId -уникальный внутренний идентификатор элемента управления контентом,
type: строковый,
example: «5_665».
Объект Параметр Lock может иметь следующие значения:
Численное значение Редактировать Удалить 0 нет да 1 нет нет 2 да нет 3 да да Примерconnector.attachEvent("onFocusContentControl", function() { console.log("event: onFocusContentControl"); });
- Tag — тег, назначенный элементу управления содержимым. Один и тот же тег может быть назначен нескольким элементам управления контентом, чтобы вы могли ссылаться на них в своем коде,
- onInputHelperClear -функция, вызываемая, когда пользователь пытается очистить текст, и помощник ввода исчезает.Пример
window.Asc.plugin.event_onInputHelperClear = function() { window.Asc.plugin.currentText = ""; window.Asc.plugin.getInputHelper().unShow(); };
- onInputHelperInput — функция, вызываемая, когда пользователь пытается ввести текст и появляется помощник ввода.Параметры
Название Описание Тип data Определяет текст, который вводит пользователь: - add — определяет, добавляется ли текст к текущему тексту или это начало текста,
type: логический,
example: true; - text — текст, который вводит пользователь,
type: строковый,
example: «text».
Объект Примерwindow.Asc.plugin.event_onInputHelperInput = function(data) { if (data.add) window.Asc.plugin.currentText += data.text; else window.Asc.plugin.currentText = data.text; ... }
- add — определяет, добавляется ли текст к текущему тексту или это начало текста,
- onMethodReturn — функция, вызываемая для возврата результата ранее выполненного метода. Его можно использовать для возврата данных после выполнения метода executeMethod.Параметры
Параметр Описание Тип returnValue Определяет значение, которое будет возвращено. Примерwindow.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [_obj]); window.Asc.plugin.onMethodReturn = function(returnValue) { if (window.Asc.plugin.info.methodName == "InsertAndReplaceContentControls") { window.Asc.plugin.executeMethod("GetAllContentControls"); } else if ("GetAllContentControls") { window.Asc.plugin.executeCommand("close", console.log(JSON.stringify(returnValue))); } };
- onTargetPositionChanged — функция, вызываемая при изменении целевой позиции в редакторе.Пример
window.Asc.plugin.event_onTargetPositionChanged = function() { if (!fClickLabel) { window.Asc.plugin.executeMethod("GetCurrentContentControl"); } fClickLabel = false; };
- onTranslate -функция, вызываемая сразу после запуска плагина или позже, в случае изменения языка плагина.Пример
window.Asc.plugin.onTranslate = function() { var label = document.getElementById("button_new"); if (label) label.innerHTML = window.Asc.plugin.tr("New"); }