Всплывающие окна
Хз зачем я это сделал
Демо-страница dialog.js Вызывается функцией Dialog(), которая создаёт новое окно и принимает эти параметры: Dialog( { width : 400, height : 200, header : "Заголовок окна", body : "Содержимое окна", animated : false, // анимация при сворачивании, показе и скрытии duration : 1000, // время для всех анимаций modal : false, // блокировать ли содержимое страницы noToggle : false, // не отображать кнопку "Свернуть" noClose : false, // не отображать кнопку "Закрыть" onlyThisWindow: false, // запретить показ других окон onToggle : function (isOpen) {}, onClose : function () {} } ); Dialog() возвращает объект, помогающий в дальнейшем работать с окном: var bx = Dialog( ... ); bx.Box; // ссылка на DIV, содержащий все элементы окна (кроме Modal) bx.Header; // ссылка на заголовок окна bx.Body; // ссылка на тело окна bx.ButtonClose; // кнопка "Закрыть" bx.ButtonToggle; // кнопка "Свернуть/Развернуть" bx.Modal; // DIV, реализующий модальность окна bx.UserData; // объект data, переданный в Dialog( data ) bx.triggerClose(); // закрыть окно принудительно bx.triggerToggle(); // свернуть или развернуть bx.id; // уникальный ID окна bx.onToggle(isOpen); // добавить обработчик на сворачивание/разворачивание окна bx.onClose(); // добавить обработчик на закрытие окна Примечательно, что в обработчик onToggle первым аргументом передаётся true, если окно на данный момент открыто и false, если свёрнуто. Также есть глобальные свойства: Dialog.onlyOneWindow = false; // запретить показ больше одного окна Dialog.windows = []; // массив, содержащий данные о всех открытых окнах |
Diphenyl Oxalate,
для общего развития http://www.vanillalist.com/?Search=Modal |
|
В новой версии ожидается:
- функция Dialog.custom() для создания пользовательских конструкторов окон: var _custom = Dialog.custom({ width: 200, height: 400, animated: true, duration: 300, modal: true, closeAll: true }); _custom({ // создаёт окно с указанными параметрами + те, которые // были прописаны в Dialog.custom header: "Заголовок", body: "Текст сообщения" }); - новые параметры при создании Dialog(): { closeAll: false, // при открытии закрывать все остальные окна closeIfAny: false, // закрывать при открытии любого другого окна holdIfAny: false, // не открывать, если открыто хоть одно окно noCopy: false, // не открывать окно, если есть открытое окно, // созданное из этого же обработчика resizable: true, // разрешить изменение размеров. Можно передать true либо // массив. Например, [1,1,1,1,0,0,0,0] запретит ресайз по диагонали notDraggable: false // запретить перенос окна } Также будут обработчики событий onDrag, onDragStart, onDragEnd, onResize, onResizeStart, onResizeEnd и off-функции для удаления обработчиков (напр. offResizeStart). - поиск ответа на вопрос "А нахера?": Тут ничего конкретно обещать не могу. |
Я тоже один раз давно этим 'страдал', сам себя спросил "А нахера", dialog был в jquery ui
|
Часовой пояс GMT +3, время: 12:55. |