бұлыңғыр фоны бар jQuery модальды терезесі. CSS3 көмегімен бұлыңғыр фондық модальдар
3. Сілтеме арқылы шақырылатын jQuery модальының мысалы (демомен)
Сіз Интернетте қалқымалы модальды терезені бірнеше рет көрген боларсыз - тіркеуді растау, ескерту, анықтамалық ақпарат, файлды жүктеп салу және т.б. Бұл оқулықта мен қарапайым модальды терезелерді жасаудың бірнеше мысалдарын ұсынамын.
Қарапайым модальды қалқымалы терезе жасаңыз
Бірден пайда болатын ең қарапайым модальды терезенің кодын қарастыруды бастайықjQuery коды
Кодты кез келген жерге қойыңыз денесіздің парағыңыз. Бетті жүктегеннен кейін бірден ешқандай пәрменсіз келесідей терезені көресіз:
Бірақ браузерде бүкіл бетті жүктегеннен кейін келесі код орындалады. Біздің мысалда, бетті суреттермен жүктегеннен кейін қарапайым қалқымалы терезе пайда болады:
CSS арқылы сілтемеден jQuery модальды шақыру
Келесі қадам жасау болып табылады модальды терезесілтемені басқан кезде. Фон баяу қараңғыланады.
Мұндай терезелерде логин мен тіркеу формаларының орналасқанын жиі көруге болады. Іске кірісейік
Бастау үшін жазайық html бөлігі. Бұл кодты құжаттың негізгі бөлігіне орналастырамыз.
Модальды терезені шақыру
CSS коды. Жеке CSS файлында немесе ішінде
jQuery кодында біз модаль мен масканың орналасуына, біздің жағдайда фонның біртіндеп қараңғылануына назар аударамыз.
Назар аударыңыз! Құжаттың басына кітапхананы қосуды ұмытпаңыз!
Кітапхананы Google сайтынан қосу. Ал, jQuery кодының өзі.
jQuery коды
1. jQuery «Қарапайым модальды жәшік» модальды терезесі
2. jQuery плагині "LeanModal"
Мазмұнды модальды терезелерде көрсету. Плагиннің демонстрациялық бетінде жұмыс істеп тұрғанын көру үшін сілтемені басыңыз: Тіркелу пішіні немесе Негізгі мазмұн.
3. jQuery плагині "ToastMessage"
Қалқымалы хабарлар. Екі нұсқадағы плагин. Бір жағдайда хабарламалар өздігінен жоғалады, белгілі бір уақыттан кейін екінші іске асыруда хабарламаны жабу үшін түймені басу керек.
4. Модальды терезеде пайда болатын мазмұн
Плагинді көрсету. Плагиннің жұмыс істеп тұрғанын көру үшін демонстрациялық беттегі «Fire A Reveal Modal» түймесін басыңыз.
5. Әдемі диалогтық терезелер
Плагиннің жұмыс істеп тұрғанын көру үшін демонстрациялық беттегі крестті басыңыз.
6. Mootools модальды терезесі, MooDialog плагині
7. Экранның жоғарғы жағындағы jQuery қалқымалы жолағы
8.jQuery қалқымалы терезесі
jQuery пішінінің плагині кері байланысқалқымалы терезеде.
10. Facebook диалогтарын енгізуге арналған MooTools «LightFace» плагині
Facebook стиліндегі диалогтық терезелер. Терезеге статикалық ақпараттан басқа кескіндерді, фреймдерді, Ajax сұраныстарын қоюға болады. Плагинге арналған көптеген параметрлер, өте қуатты құрал. Өте стильді және функционалды көрінеді. Әр түрлі мазмұндағы мысалдарды көру үшін демонстрациялық беттегі сілтемелерді орындаңыз.
11. jQuery модальды терезесі
Таза jQuery қалқымалы диалогтық терезесі.
12. jQuery модальдары
Жақсы модальды қалқымалы терезелер. Үш стиль. Демонстрациялық бетте терезелерге қоңырау шалу үшін 3 сілтеме бар.
13. jQuery модальдары
Бірнеше типті қалқымалы модальды терезелер. Плагиннің жұмыс істеп тұрғанын көру үшін демонстрациялық беттегі сілтемені басыңыз.
15. Беттің жоғарғы жағындағы қалқымалы хабарлама
Хабарлама беттің жоғарғы жағында көрсетіледі, ол өз кезегінде күңгірттенеді. Қалқымалы хабарды көру үшін демонстрациялық беттегі «Мені басыңыз» белгісін басыңыз. Айқышты басу оны жабады. jQuery көмегімен жүзеге асырылады.
16. JavaScript тіліндегі «ModalBox» модальды терезесі
Қазіргі заманғы модальды енгізу диалогтық терезелерқалқымалы терезелерді және бетті қайта жүктеуді пайдаланбай. Сценарийдің қалай жұмыс істейтінін көру үшін демонстрациялық беттегі «Демоны бастау» түймесін басыңыз.
17. Prototype кітапханасының көмегімен «Leightbox» плагині
Модальды терезелерде мазмұнды көрсетуге арналған плагин.
Модальды терезелерқазіргі заманғы веб-дизайндың ажырамас бөлігі болып табылады, олардың көмегімен әзірлеуші бір бетке айналдыру және келушіні көмекші беттерге қайта бағыттамау әдісіне жүгіне алады. Бұл оқулықта біз jQuery және CSS3 көмегімен веб-сайт үшін бұлыңғыр фоны бар керемет модальды терезелерді қалай жасау керектігін қарастырамыз. Осы ережелердің арқасында біз келушінің көзқарасын тек сайттағы қажетті ақпаратпен байланыстыратын терезе пайда болған кезде бұлыңғыр фон жасаймыз.
CSS3 көмегімен бұлыңғыр фондық модальдар
Экономикалық жаңалықтар тек осы жерде ең жақсы: Дробаха
Терезенің анимациясы сыртқы түрі түймешігін басқанда терезе жоғарыдан төменге қарай жанданатындай етіп орнатылады, бұл ретте фондық бұлыңғырлықты автоматты түрде арттырады.
1-қадам: HTML
Бізде мыналар болатын контейнер болады: тақырып, сипаттама, содан кейін сыныппен түйме үшін сынып қосамыз toggleModalмодальды терезені ашу үшін:
тақырыбы
Сипаттама
Терезенің тақырыбы
Қойындылар сайтты құру кезінде өте қызықты және ыңғайлы нәрсе, ол сайтта біраз орынды үнемдей отырып, ақпаратты дұрыс ұйымдастыруға мүмкіндік береді.
Содан кейін біз сыныпты қосуымыз керек модаль белсенді, бұл класс модальды терезені шақыруға жауапты болады, модальды_тақырыптақырыпқа және оның терезе стиліне жауап береді.
2-қадам: CSS
Енді сәндеуге көшейік, бірінші қадам - сынып түймесі,ол жауапты болады, сіз ойладыңыз, сайттағы түймелер үшін біз оған дұрыс дисплей параметрлерін орнаттық:
Түйме (фон: жоқ; фон-клип: толтыру-қорап; дисплей: кірістірілген-блок; жиек: 0; пайдаланушы-таңдау: жоқ; -webkit-touch-callout: жоқ; -webkit-appearance: түйме; -webkit-пайдаланушы -select: none; -moz-user-select: none; -ms-user-select: none; )
Контейнер (орн: салыстырмалы; шеті: 0 авто; максимум ені: 960 пиксель; қорап өлшемі: жиек қорабы; толтырғыштың жоғарғы жағы: 40 пиксель; )
мақала (фон: #fff; толтыру: 20px; төменгі жағы: 40px; жиек радиусы: 5px; ) .modal (дисплей: жоқ; орны: бекітілген; жоғарғы: 50%; ені: 100%; биіктік: авто; жиек -жоғары: -150px; фон-түсі: $color-white; жиек-радиусы: 3px; z-индекс: 999; қорап-көлеңке: 0px 1px 3px 0px күңгірттеу($color-bg, 10%); @media #( $small) (сол жақта: 50%; жиек-сол жақта: -260px; максималды ені: 520px; ) &.is-active (дисплей: блок; анимация: 1с сызықтық слайд; ) .inner (позиция: салыстырмалы; толтыру: 20px ; ) ) .modal__header (жиек-төменгі: 1px қатты күңгірттеу($color-bg, 5%); ) .modal__footer (мәтінді туралау: орталық; түйме (дисплей: кірістірілген блок; ) )Стильдер өте қарапайым, олар бөлек файлда сақталады және CSS-пен кездескен әзірлеушіге оларды өңдеу кезінде қиындық тудырмауы керек.
3-қадам JS
Біздің соңғы, бірақ маңызды емес, мәзір пайда болған кезде фонның автоматты түрде бұлыңғырлануы, сондай-ақ сілтемелердің басылуы, шағын ережелер бұл бізге көмектеседі. JS:
$("дене").addClass("бұлыңғыр"); $(".toggleModal").on("клик", функция (оқиға) ( event.preventDefault(); $(".modal").toggleClass("is-active"); $("body").toggleClass («бұлыңғыр»); ));
Нәтижесінде біз келушінің көзіне ұнайтын және дизайнды бұзбайтын тамаша модальды терезелерді аламыз.
Веб-сайттарда модальды терезелерді көру жиі кездеседі және олардың барлығы әртүрлі тапсырмалар үшін пайдаланылады. Шын мәнінде, бұл сайт интерфейсін интерактивті және ыңғайлы етуге мүмкіндік беретін өте қуатты құрал. Мысалы, модальды терезелерді авторизация пішіні, кері байланыс пішіні, өнімге тапсырыс беру сияқты әртүрлі пішіндер үшін пайдалануға болады және сіз ешқашан білмейсіз.
Бұл мақалада біз JQuery және CSS көмегімен қарапайым модальды терезені қалай жасауға болатынын қарастырамыз. Бұл мысалдың ерекшелігі, JQuery кітапханасының өзін қоспағанда, мұнда талап етілмейді.
Модальды терезенің кодын бетке орналастырамыз:
Белгілеуден көріп отырғаныңыздай, модаль блогының өзі id= төлсипаты бар div болып табылады. модальды_форма, онда id= бар span элементі бар modal_close. Бұл элемент модальды терезені жабу түймесі ретінде қызмет етеді, сонымен қатар блоктың астында id= атрибуты бар div блогы бар. қабаттасу, ол сонымен қатар өңді қараңғылауға қызмет етеді. Модальды терезе сыныппен бірге сілтеме арқылы ашылады модальды.
Модальды терезеге арналған CSS
#modal_form ( ені: 300px; биіктік: 300px; жиек-радиусы: 5px; жиек: 3px #000 тұтас; фон: #fff; орны: бекітілген; жоғарғы: 45%; сол жақта: 50%; жиек-жоғарғы: -150px; жиек-сол жақ: -150px; дисплей: жоқ; мөлдірлік: 0; z-индекс: 5; толтыру: 20px 10px; ) #модальды_форма #модальды_жабу (ені: 21px; биіктік: 21px; орын: абсолютті; жоғарғы: 10px; оң жақта: 10px; курсор: меңзер; дисплей: блок; ) #қабат ( z-индекс:3; орын: бекітілген; фон-түсі:#000; мөлдірлік:0,8; -moz-мөлдірлік:0,8; сүзгі: альфа(мөлдірлік=80) ; ені: 100%; биіктігі: 100%; жоғарғы: 0; сол жақ: 0; курсор: көрсеткіш; дисплей: жоқ; )
Үшін модальды_формабіз бекітілген ені мен биіктігін орнаттық, содан кейін позицияны экранның ортасына келтіреміз. Модальды терезенің астыңғы қабаты үшін ( қабаттасу) біз өлшемді экранның еніне орнатамыз, мөлдірлікпен толтырамыз, сонымен қатар оны әдепкі бойынша жасырамыз. ерекше сәтімен z-индекс, модаль беттегі барлық элементтердің ең үлкені болуы керек, ал мұқабада модальдың өзінен басқа барлық элементтердің ең үлкені болуы керек.
Енді ең негізгісі, бұл JavaScript коды. Модальды терезе үшін екі негізгі оқиға пайдаланылады, бұл оның ашылуы - классы бар элементті басу модальды, біздің жағдайда бұл сілтеме, ал модальды терезені жабу - қақпақты басу ( қабаттасу) немесе жабу түймесін басу, біздің жағдайда бұл id= бар аралық элементі modal_close.
$(құжат).ready(функция() ( $(".modal").click(функция(оқиға)( event.preventDefault(); $("#overlay").fadeIn(400, // мұқаба дисплейін жандандыру функция ()( // келесі режим терезесін көрсету $("#modal_form") .css("дисплей", "блок") .animate((мөлдірлік: 1, жоғарғы: "50%"), 200); ) ); )); // модальды терезені жабыңыз $("#modal_close, #overlay").click(function()( $("#modal_form") .animate((мөлдірлік: 0, жоғарғы: "45%") , 200, // мөлдірлік функциясын азайту()( // анимациядан кейін $(this).css("display", "none"); // терезені жасыру $("#overlay"). fadeOut(400); // фон жасыру)))))
Анимация көмегімен тік орынды өзгертеміз жоғарғысондай-ақ ашықтық мөлдірлік, және осының көмегімен біз қызықты әсер аламыз. Осыған ұқсас әсер терезе ашылғанда да, жабылған кезде де қолданылады. Айырмашылығы мынада, блоктар үшін сипаттарды қолдану тәртібі өзгереді, осылайша терезенің ашылуы мен жабылуы визуалды түрде көрсетіледі.
Сайтты құрудың әртүрлі әдістері туралы айтатын болсақ, модальды терезелерді жасаудың кейбір жолдары туралы айтпау абсурд болар еді. Қалқымалы, модальды терезелерді пайдаланудың мақсаты, пайдалылығы және туындайтын проблемалары туралы айтпаймыз. Осындай терезелерді жасаудың көптеген мысалдарының біреуін ғана қарастырайық.
Арнайы плагиндерді пайдалану мүмкін болмайтын жағдайлар бар, мысалы, және, сондықтан өзіңізді қалай жасауға болатынын түсінген жөн.
Мұны қалай жасау керектігін көрейік:
HTML
Келесі атрибуттары бар тегтерді қосудан бастайық:
- href - #?w=500 терезенің енін көрсетеді
- rel - әрбір терезе үшін бірегей атрибут
- class="poplight" – қалқымалы терезені көрсетуге арналған сынып
< a href= "#?w=500" rel= "popup_name" class = "poplight" >Терезе әрекетін қараңыз - Ені = 500px a> |
Терезе әрекетін қараңыз - Ені = 500px
Әрі қарай, қалқымалы терезе үшін кірістірілген түзетуді жасауымыз керек. Сіз оны беттің кез келген жерінде, мысалы, мазмұнның төменгі жағында орналастыра аласыз. Қалқымалы терезе идентификаторы төлсипатқа сәйкес келетінін ескеріңіз релтег
Бұл сілтеме мен қалқымалы терезені біріктіреді.
тақырыбы
Сізге ұнайтын кез келген мәтін
Сонымен, біз тереземіздің бетте орналасуын анықтадық, енді оны стильдермен безендірейік, былайша айтқанда, оған лайықты көрініс берейік.
CSS орналасуы
Түсінікті болу үшін мен тереземіздің стиль параметрлері үшін кейбір түсініктемелер жаздым. Қалқымалы терезелердің өлшемдері әртүрлі болуы мүмкін болғандықтан, біз CSS-те көрсетпейміз қалқымалы_блоктерезенің шеттерін, қажетті өлшемді есептеңіз, бұл тек тапсырма.
#fade (дисплей : none ; /*--әдепкіжасырын--*/фон: rgba (7, 87, 207, 0,8); позициясы: бекітілген; сол жақ: 0 жоғарғы: 0; ені: 100% биіктігі: 100% мөлдірлік: .80 z-индекс : 9999 ; ) .popup_block (дисплей : none ; /*--әдепкі бойынша жасырын--*/фон: #fff ; толтыру: 20px жиек : 8px қатты rgb (134 , 134 , 134 ); қалқымалы: солға; қаріп өлшемі: 85% позициясы: бекітілген; жоғарғы: 50%; сол жақ: 50% түсі: #000; максималды ені: 750px мин-ені: 320px; биіктігі: авто; z-индекс : 99999 ; /*--CSS3 box-shadow--*/-webkit-box-shadow: 0px 0px 20px #000 ; -moz-box-shadow: 0px 0px 20px #000 ; қорап-көлеңке: 0px 0px 20px #000 ; /*--CSS3 бұрышты дөңгелектеу--*/-webkit-шекаралық-радиусы: 12px ; -moz-шекаралық радиус: 12px ; шекара радиусы: 12px; ) .popup_block p ( шрифт салмағы : 400 ; толтыру : 0 ; жиек : 0 ; түс : #000 ; жол биіктігі : 1,6 ; ) .popup_block h2 ( жиек : 0px 0 10px ; түс : , rgb43 ) ); шрифт салмағы: 400; мәтінді туралау: ортасына; мәтін көлеңкесі: 1px 1px 2px #0D0C0C; ) /* жабу түймесін жасаңыз */.close (фон түсі : rgba (61 , 61 , 61 , 0.8 ) ; жиек : 2px қатты #ccc ; биіктік : 25px ; сызық биіктігі : 20px ; позиция : абсолютті ; оң жақта: -17px ; шрифт салмағы : қалың ; мәтінді туралау: орталық; мәтінді безендіру: жоқ; толтыру: 0; жоғарғы: -17px; ені: 25px; -webkit-шекара-радиусы: 50%; -moz-шекара-радиусы: 50%; -ms-шекарасы- радиусы: 50%; -o-шектік-радиусы: 50%; жиек-радиусы: 50%; -moz-box-shadow: 1px 1px 3px #000; -webkit-box-shadow: 1px 1px 3px #000; box- көлеңке : 1px 1px 3px #000 ; ) .жабу : бұрын (түс : rgba (255 , 255 , 255 , 0.9 ) ; мазмұн : «X» ; шрифт өлшемі : 12px ; мәтіндік көлеңке : 0 -1px, rgba ( 0 , 0 , 0,9 ); ) .жабу : меңзерді апару (фон түсі : rgba (252 , 20 , 0 , 0,8 ); ) .көлеңке ( қорап-көлеңке : 4px 4px 10px #857373 ; -webkit:-4box 4px 10px #857373 ; -moz-box-shadow: 4px 4px 10px #857373 ; толтыру : 0 ; ) /*--IE6 үшін бекітілген позициялау--*/* html #fade (позиция : абсолютті ; ) * html .popup_block (позиция : абсолютті ; ) |
#fade (дисплей: ешқайсысы;/*--әдепкі бойынша жасырын--*/ фон: rgba(7, 87, 207, 0,8); орны: бекітілген; сол жақта: 0; жоғарғы: 0; ені: 100%; биіктік: 100%; мөлдірлік: .80; z-индекс: 9999; ) .popup_block (дисплей: ешқайсысы; /*--әдепкі бойынша жасырын--*/ фон: #fff; толтыру: 20px; жиек: 8px қатты rgb(134, 134, 134); қалқымалы: солға; қаріп өлшемі: 85%; орны: бекітілген; жоғарғы: 50%; солға: 50%; түсі: #000; макс-ені: 750px; мин-ені: 320px; биіктік: авто ; z-индекс: 99999; /*--CSS3 қорап-көлеңке--*/ -webkit-box-shadow: 0px 0px 20px #000;-moz-box-shadow: 0px 0px 20px #000; box-shadow: 0px 0px 20px #000; /*--CSS3 бұрышты дөңгелектеу--*/ -webkit-border-radius: 12px; -moz-border-radius: 12px; border-radius: 12px; ) .popup_block p ( қаріп салмағы: 400 ; толтыру: 0; жиек: 0; түсі: #000; сызық биіктігі: 1,6;) : орталық; мәтіндік көлеңке: 1px 1px 2px #0D0C0C; ) /* жабу түймесін жасаңыз */ .close ( backgro) und-color: rgba(61, 61, 61, 0,8); жиек: 2px қатты #ccc; биіктігі: 25px; сызық биіктігі: 20px; позициясы: абсолютті; оң жақ: -17px; шрифт салмағы: қалың; мәтінді туралау: ортасына; мәтінді безендіру: жоқ; толтыру: 0; жоғарғы: -17px; ені: 25px -webkit-border-радиусы: 50%; -moz-шекаралық радиус: 50%; -ms-шекаралық радиус: 50%; -o-шекаралық радиусы: 50%; шекара радиусы: 50% -moz-box-shadow: 1px 1px 3px #000; -webkit-box-shadow: 1px 1px 3px #000; қорап-көлеңке: 1px 1px 3px #000; ) .жабу:бұрын (түсі: rgba(255, 255, 255, 0,9); мазмұн: «X»; қаріп өлшемі: 12px; мәтіндік көлеңке: 0 -1px rgba(0, 0, 0, 0,9); ) .close:hover (фон түсі: rgba(252, 20, 0, 0,8); ) .shadow (box-shadow:4px 4px 10px #857373; -webkit-box-shadow:4px 4px 10px #857373; -moz- box-shadow:4px 4px 10px #857373; padding:0; ) /*--IE6 үшін бекітілген позициялау--*/ *html #fade (позиция: абсолютті; ) *html .popup_block (позиция: абсолютті; )
Терезенің қалыптасуымен және оның сыртқы түрібірге css, Менің ойымша, ерекше қиындықтар болмайды. Стильдерді тікелей жазуға болады HTML беті, тегтер арасында
және, немесе сіз оны апара аласыз бөлек файлстильдеріңіз, әдетте осы файл style.css, немесе сол сияқты нәрсе.jQuery орнату
Модальды терезенің толық жұмыс істеуі үшін сіз осы кітапхананың жұмысымен таныс емес jQuery-ді қосуыңыз керек, сіз оқи аласыз.
Жарайды, әрі қарай жүреміз. сіз көбіне аласыз соңғы нұсқасы jQuery кітапханасының веб-сайтынан немесе жабылатын тегтің алдындағы бөлімде оны құжатқа қосатын Google жүйесінде орналасқан бөлек файлды пайдаланыңыз.