Работа с `_uWnd` — это база для создания интерфейсов на платформе uCoz.
Это мощный конструктор модальных окон, построенный на проприетарной библиотеке uCoz (базируется на старых наработках jQuery UI, но сильно модифицирована).
Основной синтаксис: `new _uWnd(name, title, width, height, options, content, menu)`;
Ниже приведен полный разбор аргументов и доступных методов.


### 1. Основные аргументы


  • | Аргумент | Тип | Описание |
    | --- | --- | --- |
  • | **name** | String | Уникальный ID окна. Если открыть окно с тем же именем, старое закроется или обновится. |
  • | **title** | String | Заголовок окна (поддерживает HTML). |
  • | **content** | String/Obj | Содержимое окна или объект для AJAX-загрузки. |
  • | **width** | Int | Ширина в пикселях. |
  • | **height** | Int | Высота в пикселях. |
  • | **options** | Object | Объект с настройками (см. ниже). |
  • | **menu** | Object | Опциональное меню (кнопки в нижней или верхней части). |


### 2. Ключевые параметры (Options)
Эти настройки передаются в пятом аргументе `{...}`:


  • * **`autosize: 1`** — автоматическая подстройка высоты под контент.
  • * **`modal: 1`** — делает окно модальным (блокирует фон).
  • * **`min: 1`, `max: 1**` — добавляет кнопки сворачивания и разворачивания.
  • * **`canclose: 1`** — можно ли закрыть окно (по умолчанию 1).
  • * **`resizable: 1`** — позволяет менять размер окна мышкой.
  • * **`align: 'left' / 'right' / 'center'`** — выравнивание.
  • * **`shadow: 1`** — отображение тени.
  • * **`header: 1 / 0`** — показывать или скрыть шапку окна.
  • * **`onclose: function() {...}`** — функция, которая сработает при закрытии.


### 3. Специальные методы (Статические функции)
Вместо создания `new _uWnd`, можно управлять уже открытыми окнами через объект `_uWnd`:

  • * **`_uWnd.close('name')`** — закрыть окно с конкретным именем.
  • * **`_uWnd.getByName('name')`** — получить объект окна для манипуляций.
  • * **`_uWnd.alert('Текст', 'Заголовок', {options})`** — быстрый вызов стандартного уведомления.
  • * **`_uWnd.confirm('Вопрос?', 'Заголовок', function(ok){...})`** — окно подтверждения.


### 4. Работа с AJAX (Загрузка контента)
Если вы хотите загрузить в окно страницу сайта, в аргумент `content` передается объект:


  • new _uWnd('myAjaxWindow', 'Загрузка...', 300, 150, {autosize:1}, {url:'/index/8-1'});
  • * **`url`**: адрес страницы.
  • * **`type`**: 'POST' или 'GET'.
  • * **`xml`**: если нужно парсить XML-ответ.


### 5. Пример продвинутого окна с кнопками
Вот как собрать функциональное окно:
Код
new _uWnd('testWin', 'Настройки профиля', 400, 250, {
  autosize: 1,
  modal: 1,
  fixed: 1, // Окно не скроллится вместе со страницей
  nomove: 0 // Можно ли перетаскивать
},  
'<div class="my-content">Вы уверены, что хотите сохранить изменения?</div>',  
{
  footer: {
  buttons: {
  'save': function() { alert('Сохранено!'); _uWnd.close('testWin'); },
  'cancel': function() { _uWnd.close('testWin'); }
  }
  }
});


### Главный совет по отладке в uCoz
Поскольку документация uCoz часто бывает неполной, вы можете в консоли браузера (F12) ввести `console.log(_uWnd)`, чтобы увидеть все доступные встроенные свойства и методы прототипа в текущей версии вашей библиотеки.

Комментарии

Минимальная длина комментария - 50 знаков. комментарии модерируются
HTMLSTART » Скрипты UCOZ » Статьи про Фунционал Ucoz » Полное руководство по _uWnd в uCoz: создаем профессиональные модальные окна