Modal derazalar zamonaviy veb-dizaynning ajralmas qismidir, ulardan foydalangan holda ishlab chiqaruvchi bitta sahifada diverlik usuliga murojaat qilishi va tashrif buyuruvchiga yordamchi sahifaga o'tishi mumkin. Ushbu darsda biz JQuery va CSS3-dan foydalanib, ajoyib modal derazalar bilan qanday ajoyib model derazalar yaratilishni ko'rib chiqamiz. Ushbu qoidalar tufayli biz deraza paydo bo'lganda, bizda faqat saytdagi kerakli ma'lumotlarga beriladigan deraza paydo bo'ladi.
CSS3-da loyqa fonli modal derazalar
Iqtisodiy yangiliklar Faqat bu erda eng yaxshi: fraktsiya
Bunday spomaga derazaning animatsiyasi o'rnatiladi, shunda siz CMOS-ni bosganingizda paydo bo'ladi, ko'rinishi yuqoridan pastdan pastki qismgacha jonlantiriladi, orqa fon bluri avtomatik ravishda kuchayadi.
1-qadam. HTML
Bizda quyidagilar mavjud bo'lgan idishga ega bo'lamiz: sarlavha, tavsif, keyin biz sinf bilan tugmachani qo'shamiz. togglriya Modal oynani ochish:
Sarlavha
Tavsif
Deraza uchun sarlavha
Tablar sayt yaratishda juda qiziqarli va qulay narsadir, bu sizga saytda ozgina bo'sh joyni tejashga imkon beradi.
Keyin biz sinfni qo'shishimiz kerak modol faolBu sinf modal oynani chaqirish uchun javobgar bo'ladi, modol__ Nasher. Sarlavha va uning stilizat oynasi uchun javobgar.
2-qadam. CSS.
Kelyuza biz stilizatga ko'chib o'tamiz, birinchi qadam sinf bo'ladi pirogsaytdagi tugmachalar uchun bu sizga qanday javob berganingiz uchun javob beradi, biz unga to'g'ri parametrlarni o'rnatdik:
Sarlavlar juda oddiy, ular alohida fayl tomonidan saqlanadi va ularni CSS-ga duch kelgan ishlab chiqaruvchidan tahrirlashda qiyinchiliklarga olib kelmasligi kerak.
3-qadam. JS.
Bizning so'nggi, lekin ahamiyatsiz, menyu paydo bo'lganda, shuningdek, havolalar bosilganda, kichik qoidalar bizga yordam beradi JS.:
Natijada, biz ajoyib modal derazalar olamiz, bu postparatning nigohi uchun zavqlanamiz va dizayningizni o'zlashtirmang.
Turli xil muhandislik texnikasi haqida gapirganda, modal derazalar yaratishning ba'zi usullari haqida gapirmaslik istagi yo'q. Biz pop-uplarni, modal derazalardan foydalanishning oldini olish, kommunal va paydo bo'lgan muammolar haqida gapirmaymiz. Biz bunday shamollarni yaratishning faqat bittasini tahlil qilamiz. Masalan, maxsus plaginlardan foydalanish imkoniyati bo'lmaganda, masalan, masalan, qanday qilib o'zingiz yaratishingiz mumkinligini tushunishga arziydi.
Buni qanday qilishni ko'rib chiqaylik:
HTML.
Quyidagi atributlar bilan teglarni qo'shib boshlaymiz:
hREF - #? W \u003d 500 oynaning kengligini belgilaydi
rel - har bir deraza uchun noyob atribut
class \u003d "SPORTRIGE" - pop-up oynasini namoyish qilish uchun sinf
<
a href=
"#?w=500"
rel=
"popup_name"
class
=
"poplight"
> Amaldagi oynani ko'ring - kenglik \u003d 500px
a>
Amaldagi oynani ko'ring - kenglik \u003d 500px
Keyin biz qalqib chiquvchi oynada o'rnatilgan belgi yaratishimiz kerak. Siz sahifaning istalgan joyida, masalan, tarkibning pastki qismida joylashishingiz mumkin. E'tibor bering, qalqib chiquvchi oyna identifikatori atributga mos keladi rel. Yorliq Bu havolani va pop-up oynasini birga birlashtiradi.
Sarlavha
Yuragingizdagi har qanday matn
Shunday qilib, biz oynamni joylashtirish bilan, biz buni tiklab, uslublar yordamida joylashtiramiz, unga munosib nuqtai nazar.
CSS non
Ravshanlikni iste'mol qilish uchun men derazamizning uslub parametrlariga ba'zi tushuntirishlarni buyurdim. Pop-uplar boshqa o'lchamda bo'lishi mumkinligi sababli, biz CSS-da belgilanmaymiz popup_block Oynaning qirralari, kerakli hajmni hisoblang, bu faqat vazifa.
Oynaning shakllanishi va uning CSS bilan paydo bo'lishi bilan, menimcha, hech qanday qiyinchiliklar bo'lmaydi. Uslublar to'g'ridan-to'g'ri HTML sahifasida, teglar o'rtasida ro'yxatdan o'tishi mumkin
va va siz uni uslublaringizning alohida fayliga, odatda ushbu faylga olishingiz mumkin style.css.yoki shunga o'xshash narsa.
JQuery-ni sozlash.
Moddal oynaning to'liq ishlashi uchun siz ushbu kutubxonaning ishi bilan tanish bo'lmagan jQuererni ulashingiz kerak.
Xo'sh, biz yana boramiz. Siz jQuererning so'nggi versiyasini kutubxona saytidan olishingiz yoki ichaklarda joylashgan alohida fayldan foydalanishingiz mumkin, uni hujjatga ulash yorlig'i oldidagi bo'limda
Bunday satrni joylashtirish orqali:
Keyingi bosqichda JQuerer plaginini to'ldirish, qalqib chiquvchi oynamizni faollashtirish uchun kod mavjud, biz nima qilishimiz uchun ba'zi tushuntirishlar mavjud.
Plagin jQuery.
$ (Hujjat). Tayyor (funktsiya (funktsiya) ( // Spell va HRE sinfidagi Atribut yorlig'i bilan havolani bosganingizda # # dan # $ ("A.POPGRILIK"). Bosing (funktsiya (funktsiya) (ABP POPID \u003d $ (bu). Att ("REL"); // deraza nomini oling, NECTUTCUTS havolalarida yangi o'zgarish nomini qo'shishda unutishi kerak emas Var Popurl \u003d $ (bu). At ("HREF"); // HREF atribut havolalari hajmini oling// HREF URL manzilidan so'rov va o'zgaruvchilar Var so'rov \u003d popurl. Split ("?"); Var Dim \u003d so'rov [1]. Split ("&"); Var Popwidt \u003d Dim [0]. Split ("\u003d") [1]; // so'rov satrining birinchi qiymati// On derazaga yopish tugmasini qo'shing. $ ("#" + POINID). Fadin (). CSS ("kenglik": raqam (popwid))). Prepend ( ""
)
;
// Markazda (vertikal va gorizontal) yonish uchun marj (studiya) ni aniqlang - biz Introm / CSS-larda belgilangan qismlar + ramka kengligi uchun 80 tagacha qo'shamiz Var Popmargtop \u003d ("$ (" # '' + Popid). Balandligi () + 80) / 2; var popmarleft \u003d ($ ("# '' + Popid). Kengligi () + 80) / 2; // kasallikning qiymatini belgilang $ ("#" + POINID). CSS (("marjali-test": - popmargtop, "marja-chap": - popmarklfttine)); // shaffof pufakcha fonini qo'shing $ ("Tana"). Amaliy (" "
)
;
// Ada konteyner tegdan oldin ro'yxatdan o'tadi.
$ ("# Fade"). CSS (("Filtr": "Alpha (Yorqinlik \u003d 80)")). Fadin (); // Qatlamning shaffofligi, ahmoq ya'ni filtr Qaytish noto'g'ri; )))); // Oynani yoping va qora ranglar $ (Hujjat). ("Bosish", "A.CLANOLO, #FADE", funktsiya () // Oynaning tashqarisida bosish, I.E. Orqa fonda ... $ ("# Fade, .popup_block"). Quyidagi (Fade (($ ("# Fadeccale"). // silliq yo'qolish )))); Qaytish noto'g'ri; )))); ))));
Umuman olganda, agar siz qoldiqqa ko'tarilmasa va o'zingizni haddan tashqari ko'p miqdorda yuklamang, bizning ajoyib modal oynamiz ishlashga tayyor va sizning fikrlaringiz matnga yoki boshqa foydali ma'lumotlarni kutmoqda. Modil oynani undagi video yoki keng miqyosli rasmlarni joylashtirishni istaganlar, yuqoridagi misolning misol oynasining namunasidir va unchalik og'ir emas. Agar so'ralsa ham, bu muammo emas.
Keyingi safar men aniq aytib beraman va misolni ko'rsataman va aniq ko'rsatib turaman, ko'pchilik pop-up oynasiga va boshqa uchinchi tomon ob'ektlarini o'rganishga qiziqadi. Shunday qilib, veb-saytingizni yo'qotmang va yangilanishlarni tomosha qiling!
Yangilamoq: DM-modal.JS versiyasi v1.3 (01/15/2017) Sobit: Eskirgan funktsiya. Belgilangan funktsiya (), href * \u003d \\\\ # sintaksis ishlatiladi. Endi plagin jQuery kutubxonasining tegishli versiyalari bilan ishlaydi.
Ana xolos! Umid qilamanki, bu yana bir foydali dars bo'ldi.
Barcha hurmat bilan Idrew
3. Manzil bilan kelib chiqqan modal jQuerery oynasining misoli (demo bilan)
Ehtimol, siz allaqachon Internetdagi pop-up modal oynasini allaqachon ko'rgansiz - ro'yxatga olish, ogohlantirish, ma'lumot ma'lumotlari, fayllarni yuklab olish va boshqa narsalar. Ushbu darsda men eng oddiy modal derazalarni yaratish uchun bir nechta misollarni taklif qilaman.
Oddiy qalqib chiquvchi oynani yarating
Biz darhol paydo bo'ladigan oddiy modal oynaning kodini ko'rib chiqamiz jquery kodi
Kodni joylashtirish tana. Sizning sahifangiz. Sahifani yuklab olgandan so'ng darhol, hech qanday buyruqsiz, keyingi oynani ko'rasiz:
Ammo quyidagi kod barcha sahifani brauzerda yuklagandan so'ng amalga oshiriladi. Misolda, rasmlar bilan sahifani yuklaganingizdan so'ng, oddiy qalqib chiquvchi oynasi paydo bo'ladi:
CSS bilan ma'lumotnoma orqali modal jQuerer oynasini chaqirish
Keyingi qadam - bu yaratilish bo'ladi moddal oynalar Havolani bosganda. Orqa fon asta-sekin xiralashadi.
Siz ko'pincha kirish va ro'yxatga olish shakli bunday derazalarda joylashganligini ko'rishingiz mumkin. Biz ishlay boshlaymiz
Boshlash, yozish html qism. Ushbu kod hujjatingizning tanasiga joylashtirilgan.
Modol oynani chaqiring
Moddal oynaning matni
Yaqin
Moddal oynada matn.
CSS kodi. Alohida CSS faylida yoki ichida
JQuery Code-da asosiy e'tibor bizning holatimizda asta-sekin xiralashgan moddiy deraza va niqobning holatiga yo'naltiriladi.
Diqqat! Hujjatning boshiga kutubxonani ulashni unutmang!
Ko'pincha siz modal derazalar bilan tanishishingiz mumkin va ularning barchasi turli vazifalar uchun ishlatiladi. Aslida, bu sizga sayt interfeysini ko'proq interfaol va qulay qilish imkonini beradigan juda kuchli vositadir. Masalan, modal derazalarda avtorizatsiya shakli, fikr-mulohaza shakli, buyurtmani buyurtma qilish va siz hech qachon bilmaysiz.
Ushbu xabarda biz JQuery va CSS-dan foydalanib, moddiy oddiy oynani qanday qilish mumkinligini ko'rib chiqamiz. Ushbu misolning o'ziga xos xususiyati shundaki, bu bu erda, shuningdek, jQuery kutubxonasi bundan mustasno.
Biz sahifadagi modal oynaning kodini joylashtiramiz:
yaqin
Ochiq model oynasi
O'rta oynaning blokidan ko'rinib turibdiki, modal oynaning bloki ID atributsiyasi modal_formqaysi elementda Span C ID \u003d modal_cloz. Ushbu element modal oynani yopish uchun tugmachali bo'lib xizmat qiladi, qo'shimcha ravishda, blok blok bloki blokning atributsi bilan blok ostida joylashgan \u003d qopqog'ibir vaqtning o'zida xizmat qiladi va fonni xira qiladi. Moddal oynada sinfda, sinfda ochiladi modal.
Uchun modal_form Biz belgilangan kenglik va balandlikni o'rnatdik va keyin ekranning markaziga yo'naltirdik. Moddal oynaning substrati uchun ( qopqog'i) Biz ekran kengligining hajmini belgilaymiz, shaffoflik bilan to'ldiring, shuningdek uni o'chirish bilan bog'lash. Maxsus lahzalar S. z-indeksi., Modol oynasida u sahifaning eng kattaligi bo'lishi kerak va muqovaning moddiy derazasidan boshqa barcha elementlarga ega bo'lishi kerak.
Endi eng asosiy narsaga, bu JavaScript-dagi koddir. Modol oynasi uchun ikkita asosiy tadbirlardan foydalaniladi, bu uning ochilishi - sinf bilan elementni bosing modalBizning holatlarimizda, bu aloqa va model oynaning yopilishi, bu qopqoqdagi qopqoq ( qopqog'i) yoki "Yopish" tugmachasini bosing, shuning uchun u ID \u003d modal_cloz.
Jonizatsiya orqali biz vertikal holatni o'zgartiramiz tepasi., shuningdek, oshkoralik kabi shaffof emaslikVa shu bilan biz qiziqarli ta'sirga erishamiz. Ushbu ta'sir deraza ochish paytida va yopiq bo'lganda ham ishlatiladi. Farqi shundaki, bloklar uchun mulkni o'zgartirish tartibi o'zgaradi va derazaning ochilishi va yopilishini tasavvur qiladi.
1. JQuerery "oddiy katakli" dagi modal oynasi
2. JQuery Plug "TilMamodal"
Modal derazalarda kontent displeyi. Demo sahifasida plaginni ko'rish uchun havolani bosing: shakl yoki asosiy tarkibni ro'yxatdan o'tkazish.
3. JQuery Plug "Tasasterge"
Qalqib chiquvchi xabarlar. Plagin ikki versiyasida. Bir holatda, xabarlar ma'lum bir vaqtdan keyin mustaqil ravishda yo'qoladi, ikkinchi chora-tadbirda xabarni yopish uchun siz tugmachani bosishingiz kerak.
4. Moddal oynada kontentning pop-up
Plagin "oshkor bo'ladi". Amalga oshirilgan plaginni ko'rish uchun, Yong'inni bosing, namoyish sahifasida modal tugmani oching.
5. Yoqimli dialog oynalari
Demo sahifasida plaginni tomosha qilish uchun xochni bosing.
6. Mootals Modal oynasi, Kainalog plagin
7. JQuery Pop-up ekranining yuqori qismi
8. JQuery Pop-up oynasi
jQuerer plaginini qalqib chiquvchi oynada aks ettirish uchun.
10. Facebook dialogini amalga oshirish uchun "Lifeace" plaginlari
Facebook dialog oynalari. Statik ma'lumotlar, rasmlar, ramkalar, Ajax so'rovlari derazaga joylashtirilishi mumkin. Plaginning ko'plab sozlamalari, juda kuchli vositadir. Bu juda zamonaviy va funktsional ko'rinadi. Turli xil tarkib bilan misollarni ko'rish uchun demo sahifasidagi havolalarga amal qiling.
11. JQuery Modal oynasi
JQuery-da pop-up dialog oynasi.
12. Modal jQuery Windows
Yoqimli pop-up modal derazalar. Uchta stilize dizayni. Demo sahifasi Windows-ga qo'ng'iroq qilish uchun 3 ta havolalarni taqdim etadi.
13. Modal jQuery Windows
Bir necha turdagi pop-up modal derazalar. Plugni ko'rish uchun demo sahifasi havolasini bosing.
15. Pop-up yuqori sahifa xabari
Xabar sahifaning yuqori qismida ko'rsatiladi, bu esa, qorong'i tushadi. "CLICK" ni bosing "Pop-up xabarini ko'rish uchun demo sahifasiga yozing. Xochni bosish uni yopadi. JQuery bilan amalga oshiriladi.
16. JavaScript-dagi "modelbox"
POIN-UP ORDET va Sahifani qayta ishga tushirmasdan zamonaviy modal dialog oynasini amalga oshirish. Demo sahifasida skriptni ko'rish uchun Boshlash Demo tugmasini bosing.
17. Prototyp kutubxonasidan foydalangan holda "LeightBox" plaginlari
Tarkibidagi modal derazalardagi tarkibni ko'rsatish uchun plagin.