ModalBox - модальные диалоги на джаваскрипте
Поднимите руку, кто терпеть не может функцию alert(). Я отучился от этой заразы после того, как начал использовать firebug. В этом плагине есть замечательная функция:
-
console.log(some_variable);
которая выдаст нужную переменную на консоль. Кто ещё использует alert для отладки своих скриптов - милости прошу на эту страницу.
Но alert не всегда используется для отладки сайтов. Вместе с функцией confirm, его используют для донесения какой нибудь важной информации до посетителя. Информации настолько важной, что это окно с информацией должно быть модальным. Я ничего не имею против модальных диалогов, но alert или confirm считаю старомодными. Никак такие окошки не увязываются с современными дизайнами сайтов.
Поэтому сегодня я покажу вам, как сделать обалденный модальный диалог с помощью ModalBox. Полный комплект можно скачать по этому адресу.
- Установка
Подгружаем джавасктипт и CSS
HTML:-
<script type="text/javascript" src="includes/prototype.js"></script>
-
<script type="text/javascript" src="includes/scriptaculous.js?load=builder,effects"></script>
-
<script type="text/javascript" src="includes/modalbox.js"></script>
-
<link rel="stylesheet" href="includes/modalbox.css" type="text/css" media="screen" />
-
- Использование
Как параметр к ModalBox можно дать ссылку на другую HTML страницу, или id DOM элемента
JavaScript:-
// откроет message.html в модальном окне
-
Modalbox.show("/message.html", {title: this.title, width: 600});
-
-
// покажет содержимое элемента с id="message" в модальном окне
-
Modalbox.show($('message'), {title: this.title, width: 300});
-
Про другие параметры и примеры использования можно почитать на страничке Андрея Оконечникова.
Напоследок предлагаю потестировать модальный диалог, нажав на эту ссылку:
ModalBox Demo
del.icio.us Забобрить!15 Comments so far
Leave a reply
превед,
прикольная штука… крассиво выглядит :о)
Безусловно, alert и confirm не вписываются не в один дизайн современного сайта. Красивое альтернатива была предложена разработчиками Facebook.com.
Можно по подробнее? Что за альтернатива?
лучшие диалоги на EXT - на своё блоге я их разживал - http://www.dumay.name/Ext/dialogs.html
PS все алерт вписываются в дизайн так как алерт подстраивается не под дизайн сайта а под дизайн браузера-виндовса то есть не прогодаешь
Добрый день. Решил использовать модальные окна. В фаерфоксе все ок, в осле картинки не отображаются. может фикс какой есть. Чую что дело в ксс, никак поймать не могу что не так.
цн
Привет.
Есть желание использовать библиотеку MODALBOX 1.6.0, чтобы подменять стандартные модальные окна методов JavaScript CONFIRM, PROMPT, ALERT.
Подскажите, как сделать так, чтобы вызовы названных методов (где-то на сайте) подменялись вызовом более красивых модальных окошек из MODALBOX?
Есть ли здесь стандартный приём?
Я попробовал вставить в html-шаблон веб-странички текст с указанием на библиотеки и css-файл:
А в методе
Modalbox.Methods = {
overrideAlert: true,…
“true” поменял на “false”.
При возникновении ALERT (а оно генерится динамически, кусок html-кода типа:
…
window.setTimeout(”alert(’Во введенном логине или пароле ошибка!’)”,10);
…
) что-то моргает, но окошко ALERT не появляется. ;(
Внизу окна броузера IE7 выдаётся сообщение
Строка: 56
Симвоол:3
Ошибка: Объект не поддерживает это свойство или метод
Библиотеки отрезаются. Фильтр неправильно работает, видимо.
Ещё раз:
Библиотеки по образцу на страничке: http://www.ajaxrussia.com/index.php?s=modalbox
попробуй переписать функцию alert
в IE у меня вообще не работает
все разобрался
у меня были линки:
Контакт
в этом случае в IE не запускается modal box
а тупо переходит на страницу contact.php
если немного изменить:
Контакт
то в IE все работает нормально
где кнопочка править сообщение?
было
a href=”contact.php” title=”Контакты” onclick=”Modalbox.show(this.href, {title: this.title}); return false;”
стало
a href=”#” title=”Контакты” onclick=”Modalbox.show(’contact.php’, {title: this.title}); return false;”
в IE все нормально работает?