---
title: "Toolbar API — открыть, закрыть, переключить"
description: "Открытие, закрытие и переключение блочного тулбара и его меню настроек из вашего собственного кода."
source: https://blokeditor.com/ru/docs/toolbar-api/
lastmod: 2026-09-26
---

Фреймворк JavaScript

Интерфейс Панель инструментов

На этой странице toolbar.close(options?)

# Toolbar API: управление блочным тулбаром

Управление панелью инструментов блока и её состоянием.

Обновлено 26 сент. 2026 г. [Редактировать на GitHub](https://github.com/JackUait/blok/blob/main/docs/src/components/api/api-data.ts)

### Как получить экземпляр редактора

Методы ниже вызываются на редакторе, созданном через new Blok(). Они доступны после того, как разрешится editor.isReady.

TypeScript

```
// You already hold the instance returned by the constructor.
const editor = new Blok({ holder: 'editor' });
await editor.isReady;

// Call any API method on it.
editor.caret.setToLastBlock('end');
```

## Методы

### toolbar.close(options?)

void

Закрыть панель инструментов с необязательной конфигурацией.

Когда использовать

Закрывает панель инструментов блока из кода. Пригодится после вашего действия, чтобы интерфейс не висел.

TypeScript

```
// Standard close. The next mousemove re-opens the toolbar: close() clears the
// hovered block and resets the hover dedup, so BlockHovered fires again.
editor.toolbar.close();

// Close and keep it closed while the pointer stays on the same block
// (skips the hover-state reset, so no BlockHovered is re-emitted for it).
editor.toolbar.close({ setExplicitlyClosed: false });
```

### toolbar.open()

void

Открыть панель инструментов.

Когда использовать

Принудительно открывает панель инструментов для текущего блока. Обычно она появляется при наведении или фокусе, поэтому используйте это редко.

TypeScript

```
editor.toolbar.open();
```

### toolbar.toggleBlockSettings(openingState?, trigger?, options?)

void

Переключить настройки блока (☰).

Когда использовать

Открывает или закрывает меню настроек ☰ из кода. Передайте явный булев флаг, чтобы задать состояние, а не переключать его.

Параметры

| Параметр | Тип | Обязательный | По умолчанию | Описание |
| --- | --- | --- | --- | --- |
| `openingState` | `boolean` | — | `toggle current state` | Принудительно открыть (true) или закрыть (false) меню настроек. |
| `trigger` | `HTMLElement` | — | `undefined` | Элемент, к которому привязывается поповер настроек. Если он внутри блока, меню откроется для этого блока, а не для блока с курсором. |
| `options` | `ToolbarBlockSettingsOptions` | — | `undefined` | Переопределения размещения. `placeLeftOfAnchor` уже равен `true`, когда вы передаёте элемент-триггер. Задайте `false`, чтобы открыть поповер справа от триггера. |

TypeScript

```
// Toggle current state
editor.toolbar.toggleBlockSettings();

// Force open
editor.toolbar.toggleBlockSettings(true);

// Force close
editor.toolbar.toggleBlockSettings(false);

// Anchor the settings popover to a custom trigger element.
// Left placement is already the default for an element trigger —
// opt out to open the popover to the right instead:
editor.toolbar.toggleBlockSettings(true, triggerEl, { placeLeftOfAnchor: false });
```

### toolbar.toggleToolbox(openingState?)

void

Переключить тулбокс (меню +).

Когда использовать

Открывает или закрывает тулбокс, меню вставки по кнопке + и по слэшу, из кода. Передайте булев флаг, чтобы задать состояние.

TypeScript

```
// Toggle current state
editor.toolbar.toggleToolbox();

// Force open
editor.toolbar.toggleToolbox(true);
```

### toolbar.setHidden(hidden)

void

Runtime-сеттер для `config.hideToolbar`. Скрывает или показывает hover-панель инструментов (кнопку «плюс» и ручку перетаскивания). Ещё он убирает или возвращает зарезервированный под неё отступ редактора.

Атрибут `data-blok-toolbar-hidden` на обёртке синхронизируется, поэтому пустого места не остаётся. Меню по клавише "/" продолжает работать, пока панель инструментов скрыта.

Когда использовать

Runtime-половина опции конфигурации `hideToolbar`. Переключает и поведение панели инструментов, и зарезервированный отступ, поэтому пустого места не остаётся.

Параметры

| Параметр | Тип | Обязательный | По умолчанию | Описание |
| --- | --- | --- | --- | --- |
| `hidden` | `boolean` | Обязательный | — | true скрывает hover-панель инструментов и убирает отступ. false возвращает и то и другое. |

TypeScript

```
// Hide the hover toolbar and collapse its gutter
editor.toolbar.setHidden(true);

// Restore it
editor.toolbar.setHidden(false);
```

### toolbar.setPosition(position)

void

Runtime-сеттер для `config.toolbarPosition`. Переносит плавающие элементы управления блоком между отступами редактора inline-start и inline-end. Атрибут `data-blok-toolbar-position` на обёртке синхронизируется. Он управляет и переносом отступа, и стороной, к которой прижимаются элементы управления.

Меню настроек блока зеркалится вместе с ними, поэтому оно никогда не открывается поверх своего блока. Открытая панель инструментов не закрывается, а перестраивается на месте.

Когда использовать

Runtime-половина опции конфигурации `toolbarPosition`. Переносит элементы управления вместе с зарезервированным отступом. Ещё она зеркалит меню настроек блока, чтобы оно не открывалось поверх блока.

Параметры

| Параметр | Тип | Обязательный | По умолчанию | Описание |
| --- | --- | --- | --- | --- |
| `position` | `'left' | 'right'` | Обязательный | — | 'left' это отступ inline-start (по умолчанию), 'right' это inline-end. |

TypeScript

```
// Move the +/⠿ controls to the right of the content column
editor.toolbar.setPosition('right');

// Back to the left gutter
editor.toolbar.setPosition('left');
```
