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

События

Обновлено: 15.08.25

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

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

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