Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Сервер лицензирования
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

События

Обновлено: 04.03.26

События и их описание

Раздел событий позволяет изменить все функции, относящиеся к событиям.

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();
};

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");
});

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");
});

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");
});

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;
        ...
}

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");
}

Была ли эта статья полезной?

Поделитесь пожалуйста своим мнением

      В статье есть ошибкиРекомендации не помоглиТекст трудно понятьСодержание статьи не соответствует заголовкуДругое