Красивые диалоговые окна на jquery
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Красивые диалоговые окна на jquery - 2011-02-13 17:15:52.270000
|
|
|
Pochta
Сообщений: 127
Оценки: 0
Присоединился: 2011-02-06 14:48:56.670000
|
Я очень люблю делать дизайн поистине красивым, таким, который понравился бы мне. Если я пишу скрипт самостоятельно, то я всегда очень придаю этому значение. В этой статье я расскажу вам, как можно сделать красивые диалоговые окна на JQuery. Подключим следующие библиотеки: quote:
<link type="text/css" href="dev/themes/base/ui.all.css" rel="stylesheet" /> <script type="text/javascript" src="dev/jquery-1.3.2.js"></script> <script type="text/javascript" src="dev/ui/ui.core.js"></script> <script type="text/javascript" src="dev/ui/ui.draggable.js"></script> <script type="text/javascript" src="dev/ui/ui.resizable.js"></script> <script type="text/javascript" src="dev/ui/ui.dialog.js"></script> <script type="text/javascript" src="dev/ui/effects.core.js"></script> <script type="text/javascript" src="dev/ui/effects.highlight.js"></script> <script type="text/javascript" src="dev/external/bgiframe/jquery.bgiframe.js"></script> Пример с формой регистрации: quote:
$(function() { var name = $("#name"), email = $("#email"), password = $("#password"), allFields = $(***91;***93;).add(name).add(email).add(password), tips = $("#validateTips"); function updateTips(t) { tips.text(t).effect("highlight",{},1500); } function checkLength(o,n,min,max) { if ( o.val().length > max || o.val().length < min ) { o.addClass('ui-state-error'); updateTips("Length of " + n + " must be between "+min+" and "+max+"."); return false; } else { return true; } } function checkRegexp(o,regexp,n) { if ( !( regexp.test( o.val() ) ) ) { o.addClass('ui-state-error'); updateTips(n); return false; } else { return true; } } $("#formDialog").dialog({ bgiframe: true, autoOpen: false, height: 300, modal: true, buttons: { 'Создать пользователя': function() { var bValid = true; allFields.removeClass('ui-state-error'); bValid = bValid && checkLength(name,"username",3,16); bValid = bValid && checkLength(email,"email",6,80); bValid = bValid && checkLength(password,"password",5,16); bValid = bValid && checkRegexp(name,/^***91;a-z***93;(***91;0-9a-z_***93;)+$/i,"Имя пользователя может содержать только символы ***91;a-z, 0-9, _***93; и начинаться с буквы."); // From jquery.validate.js (by joern), contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/ bValid = bValid && checkRegexp(email,/^(((***91;a-z***93;|d|***91;!#\$%&'\*\+\-\/=\?\^_`{\|}~***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)+(\.(***91;a-z***93;|\d|***91;!#\$%&'\*\+\-\/=\?\^_`{\|}~***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?((***91;\x01-\x08\x0b\x0c\x0e-\x1f\x7f***93;|\x21|***91;\x23-\x5b***93;|***91;\x5d-\x7e***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)|(\\(***91;\x01-\x09\x0b\x0c\x0d-\x7f***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@(((***91;a-z***93;|\d|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)|((***91;a-z***93;|\d|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)(***91;a-z***93;|\d|-|\.|_|~|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)*(***91;a-z***93;|\d|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)))\.)+((***91;a-z***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)|((***91;a-z***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)(***91;a-z***93;|\d|-|\.|_|~|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)*(***91;a-z***93;|***91;\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF***93;)))\.?$/i,"Некорректный формат e-mail. Для примера pupkin2@yandex.ru"); bValid = bValid && checkRegexp(password,/^(***91;0-9a-zA-Z***93;)+$/,"В пароле разрешенны только символы ***91;a-z,0-9***93;"); if (bValid) { $('#users tbody').append('<tr>' + '<td>' + name.val() + '</td>' + '<td>' + email.val() + '</td>' + '<td>' + password.val() + '</td>' + '</tr>'); $(this).dialog('close'); } }, 'Отмена' : function() { $(this).dialog('close'); } }, close: function() { allFields.val('').removeClass('ui-state-error'); } }); $('#create-user').click(function() { $('#formDialog').dialog('open'); }) .hover( function(){ $(this).addClass("ui-state-hover"); }, function(){ $(this).removeClass("ui-state-hover"); } ).mousedown(function(){ $(this).addClass("ui-state-active"); }) .mouseup(function(){ $(this).removeClass("ui-state-active"); }); }); quote:
$(function() { $("#confirmDialog").dialog({ bgiframe: true, resizable: false, height:140, modal: true, autoOpen: false, overlay: { backgroundColor: '#000', opacity: 0.5 }, buttons: { 'Удалить все': function() { $(this).dialog('close'); }, 'Отмена': function() { $(this).dialog('close'); } } }); }); Пример информационного сообщения: quote:
$(function() { $("#messageDialog").dialog({ bgiframe: true, modal: true, autoOpen: false, buttons: { Ok: function() { $(this).dialog('close'); } } }); }); Информация очень полезная для владельцев сайтов, которые тщательно следят за дизайном своих проектов. Так же информация будет интересна многим программистам. Выкладываю исходник: dialogWindows.zip (с) http://www.xblogi.ru/hitrosti/2011/0…na-jquery.html
|
|
|
RE: Красивые диалоговые окна на jquery - 2011-02-13 17:20:55.080000
|
|
|
Sрam
Сообщений: 2863
Оценки: 372
Присоединился: 2009-01-16 15:23:43.276666
|
quote:
dev/themes/base/ui.all.css Где взять?8| _____________________________ Вопрос снят!
|
|
|
RE: Красивые диалоговые окна на jquery - 2011-02-17 00:59:17.373333
|
|
|
Agent Smith
Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
|
Интересно, что вы тут написали самостоятельно. [sm=ag.gif] Может библиотеку UI? Или может Jquery - ваш продукт. О нет, я понял, вы один из разработчиков Javascript. Или нет… О, Боже… [sm=ag.gif] P.S. Информация для общего развития: В Jquery существует уже созданный официальный плагин валидатора. Так что скрипт можно было переписать, уменьшив вдвое.
|
|
|
RE: Красивые диалоговые окна на jquery - 2011-02-17 16:54:33.166666
|
|
|
DEH
Сообщений: 195
Оценки: 0
Присоединился: 2007-01-13 22:27:31.370000
|
Узнал много нового… :) Честно.
|
|
|
RE: Красивые диалоговые окна на jquery - 2011-04-01 11:39:39.203333
|
|
|
organizeit
Сообщений: 26
Оценки: 0
Присоединился: 2011-03-30 17:04:03.143333
|
Да да ТС является главным разработчиком фрэимворка JqueryUI :D:D
|
|
|
|
|