Паролингизни унутдингизми?
Login
Left, Right, Center Left, Center, Right Center, Left, Right



9-dars - Freymlar

Freymlar

Brauser oynasidagi mustaqil to'g'ri to'rtburchak shaklidagi maydon bo'lib, u o'z ichiga boshqa alohida mustaqil HTML hujjatlarni birlashtira oladi.
HTMl bo'yicha o'quv qo'llanmaning ushbu bo'limida siz har bir darchasida (oynasi) alohida mustaqqil HTML hujjatlarni ochish imkonini beruvchi freymlarnituzish usullari bilan tanishib chiqasiz. Freymlar brauserdagi yangi oyna emas, balki bu alohida oyna yoki ramka bo'lib, u brauserning ocxilib turgan oynasi ichida aks ettiriladi. Bu bo'limda, bir freymdan ikkinchi freymlarni bir-biriha havolalar yordamida bog'lash usullarini tahlil qilinadi.

Freymlar - tuzish
Ushbu freymlar qo'llanilgan sahifaning umumiy tuzilishini ko'rib chiqsak :
<FRAMESET> - freymlar tuzilishini belgilovchi ochuvchi teg (freymset)
<FRAME> - brinchi freym
<FRAME> - ikkinchi freym
</FRAMESET> - freymsetni yopuvchi teg
Shemada ko'rinib turganidek, har gal <FRAMESET> tegi yordamida freymlar tuzilishini belgilash lozim. Shundan so'ng bevosita freymlar <FRAME> tegiga n avbat keladi. Ohirgi navbatda </FRAMESET> freymset yopuvchi teg yoziladi. Hozircha bu oddiy sxemani eslab qoling. Murakkab freymlar qo'llanilgan sahifalar haqida ushbu bo'limda keyinroq ma'lumot beriladi.

Freymlar - oddiy misol
Hullas, freymlar bilan ko'rsatilgan oddiy misolni kurib chiqamiz. Ishni boshlashdan oldin, oddiy HTML formatida ikkita hujjat yarating. Birinchi hujjatga "Freym-1" ikkinchisiga esa "Freym-2" deb yozing va ularni frem1.html и frem2.html deb nomlang. Bu ikkita fayllar bizning misolimizda ikki freymlar uchun asosiy manba bo'lib hizmat qiladi.Endi esa HTML formatida keyingi hujjatni yarating.

<HTML>
<HEAD>
<TITLE>freymlar</TITLE>
</HEAD>

<FRAMESET COLS=200,*>
<FRAME NAME=left SRC=frame1.html>
<FRAME NAME=right SRC=frame2.html>
</FRAMESET>

<NOFRAMES>
Sizning brouzeringiz freymlarni tushunmaydi.
</NOFRAMES>

</HTML>
Demak siz ham uzingizning birinchi sahifangizni freymlar yordamida yaratingiz. Endi shu yaratgan sahifangizni frameset.html deb nomlab oldin yaratilgan frame1.html va frame2.html fayllar turgan papkada saqlang va frameset.html faylini o'z brouzeringizda oching. Va sizda quyidagi natija hosil bulishi kerak. Kurib turganingizdek SRC ulchami <FRAME> tegi HTML formatidagi hujjatga yo'l ko'rsatyapti va siz ushbu freymda yuklashingiz kerak bo'ladi.
Birinchi navbatda, e’tibor bergan bulsangiz HTML formatidagi freymlar tizimidagi sahifada <BODY> tegi mavjud emas. Bu esa juda muhimdir. Agar siz <BODY> tegini ishlatsangiz u holda hamma <FRAMESET> и <FRAME> teglari brouzeringiz tomonidan o'chiriladi.
Ikkinchi eslatma esa <NOFRAMES> tegiga taalluqlidir. U shunday holatga mo'ljallangan-ki, bu holatda sizning brouzeringiz freymlarni qo'llab-quvvatlamaydi. Bu holatda <NOFRAMES> tegidan keyingi barcha ma'lumotlar ko'rsatiladi. Bizning misolimizda esa quyidagi yozuv"Sizning brouzeringiz freymlarni qo'llab-quvvatlamaydi "

Freymlar - oddiy freym
Bizning misolimizda <FRAMESET> va <FRAME> teglarini biz oddiy o'lchamlarda ishlatgan edik. Endigi navbatda biz freymlar yordamida o'z sahifamizda nimalarni o'zgartira olishimizni ko'rib chiqaylik. frameset.html sahifasini baruzerda yoki HTML teglarni tahrirlovchi dasturda oching. Foydalanuvchi sizning fraymlaringizni ulchamlarini o'zgartira olmaydigan qilishingiz mumkin. Siz hozir freym chegaralariga sichqoncha ko'rsatgichini belgilab uning o'lchamlarini hohlagan tarzda o'zgartirishingiz mumkin.
NORESIZE
<FRAME> tegining parametr ushbu freymni o'zgarib bo'lmasligini anglatadi.
Misol:
<FRAME NAME=left SRC=frame1.html NORESIZE>
<FRAME NAME=right SRC=frame2.html NORESIZE>
Keyingi holatlarda, agar siz freymlar orasidagi chegaralardan voz kechmoqchi bo'lsangiz u holda siz <FRAMESET> tegining quyidagi o'lchamini ishlatishingiz zarur.
BORDER
<FRAMESET> tegining o'lchami freymlar chegaralari orasidagi masofani piksellarda ifodalaydi. Freym orasidagi chegarani umuman bo'lmasligi uchun shu o'lchamni nolga tenglashtiramiz
Misol:
<FRAMESET COLS=200,* BORDER=0>
<FRAME> tegining yana bir muhim ulchami
SCROLLING
<FRAME> tegining bu parametri mavjud freymda sahifalash chizig'ini mavjudligi yoki mavjud emasligini belgilaydi. Bu parametrning yes, no va auto belgilari bu freymda sahifalash chizig’ini borligini, yo'qligini va agar kerak bo'lsa ishlatilishini ko'rsatadi.
Misol:
<FRAME NAME=left SRC=frame1.html NORESIZE SCROLLING=auto>
<FRAME NAME=right SRC=frame2.html NORESIZE SCROLLING=yes>
<FRAMESET> tegining quyidagi ikkita o'lchamlarini siz bilishingiz zarur,COLS va ROWS ularning bagaradigan ishi freymlar orasidagi vertikal va gorizontal ajratilganligini ko'rsatadi.
COLS
<FRAMESET> tegining bu parametri gorizontal freymlarning chapdan o'ngga tuzilishuni ko'rsatadi. O'lchami raqamlar bilan beriladi. Bu freymlarning kengligi piksellarda yoki foizlarda beriladi va bir- biridan tinish belgisi bilan agratiladi. '*' simvol shuni ko'rsatadiki, qolgan umimiy maydon shu freymga ajratilishini anglatadi.
Misol:
<FRAMESET COLS=200,*,100>
Bu misolda uchta freym mavjud bo'lib, birinchisi-200 piksel, ohirgisi -100 piksell, ikkinchisi(o'rtadagi freym)-qolgan maydonning hammasi shu freym uchun ajratilgan
<FRAMESET COLS=20%,100,50,*>
Bu misolda esa to'rtta freym bo;lib, birinchisi maydonning 20%ni, ikkinchisi-100 pikselli, uchunchisi-50 pikselli, to'rtinchisi esa qolgan maydonni tashkil etadi.
ROWS
<FRAMESET> tegining bu parametri freymlarning vertikal tepadan pastga bo';lgan tuzilishuni ko'rsatadi. O'lchami raqamlar bilan beriladi. Bu freymlarning balandligi piksellarda yoki foizlarda beriladi va bir- biridan tinish belgisi bilan ajratiladi. '*' simvol shuni ko'rsatadiki u umumiy qolgan maydonni shu freymga agratilishini anglatadi.
Misol:
<FRAMESET ROWS=50%,50%>
Balandligi ekranning 50% tashkil qiluvchi ikkita freym. Anglash qiyin emaski, bu ifodani ROWS parametrida, simbol orqali quyidagicha yozish mumkin 50%,*
Freymlar murakkab freymlar tuzish
Ushbu bo'limning boshida siz tanishib chiqqan, freymlar ishlatilgan sahifaga yana bir bor murojaat qilsak. Berilgan sahifada uchta freym bo'lib, bu freymlar tarkibida gorizontal hamda vertikal holatdagi freymlar mavjud. Bu sahifani yaratish uchun biz nima qilishimiz kerak ? Demak hammasini bir boshdan boshlaymiz.
Murakkab tarkibli freymlarni yaratishimiz uchun, biz jadvallarni qanday yul bilan yaratgan bulsak shu yul bilan yaratishimiz qulayroqdir. Oq qogozga fraymlar tuzilishi andozasini chizib oling va shu fraymlarni raqamlab chiqing. Bizning misolimizda fraymlar tuzilishi quyidagicha bo’ladi:




1


 

2



3

 

Fraymlarni quyidagicha raqamlaymiz chapda o’ngga, tepadan pastga qarab. Endigi navbatni yangi sahifani yaratishga bersak. Bizning misolimizda yolgiz <FRAMESET> tegi orqali fraymlar strukturasini belgila olmaysiz, nega deganda bir <FRAMESET> tegida fraymlarni birgalikda gorizontal(COLS) va vertikal(ROWS) joylashtirish iloji yuq. Gap shundaki bir nechta <FRAMESET> teglarni quyidagicha ishlatiladi.
<HTML>
<HEAD>
<TITLE>freymlar</TITLE>
</HEAD>

<FRAMESET COLS=150,* BORDER=0>
<FRAME SRC=left.html SCROLLING=yes NORESIZE>
<FRAMESET ROWS=70,* BORDER=0>
<FRAME SRC=top.html SCROLLING=auto NAME=top NORESIZE>
<FRAME SRC=content.html SCROLLING=yes NAME=content NORESIZE>
</FRAMESET>
</FRAMESET>

<NOFRAMES>
Sizning brauzeringiz bu fraymlarni qullab quvvatlamaydi.
</NOFRAMES>

</HTML>
Hullas birinch <FRAMESET> tegi qupol qilib aytganda ekranni ikkita fraymga , ya’ni ung va chap fraymlarga agratadi. Ikkinchi <FRAMESET> tegi esa ung qisim (ung fraym) ni yana ikkita tepa va past fraymga agratadi. Ketma-ketlik tartibi HTML farmatida oldin kursatib utilganidek bulishi shart. Birinchi navbatda birinch <FRAMESET> tegi. Keyin birinchi fraym(ung fraym). Undan keyin ikkinchi fraym kelishi kerak edi , ammo biz ikkinchi <FRAMESET> tegi yordamida uni yana ikkiga bo'ldik, ya’ni biz ikkinchi fraym (chap fraym)ga yana ikkita fraymni vertikal holda (ROWS=70,*) joylashtirgan bulamiz. Keyin ikkita fraym keladi va ikkala <FRAMESET> teglari yopiladi. Mana endi natija quyidagicha buladi, ya’ni chap fraymda left.html, ung tomondagi fraymning yuqori qismida top.html va quyi qismida content.html fraymlar yuklanadi.

Freymlar - havolalar tuzish
Belgilanga maxsus freymda HTML hujjatni ocxilishi uchun havolani qanday tuzish lozim? bu juda ham oson. Buning uchun, freym ishlatiladigan sahifa yaratilganda, freym nomini berib o'tish lozim.
NAME
<FRAME> tegining bu parametri maskur freym nomini belgilaydi. Freym nomlari, ushbu freymga boshqa freymdan havola tuzish uchun qo'llaniladi.
Buzning misolimizda quyidagi kodlar qo'llanilgan:
<FRAMESET COLS=150,* BORDER=0>

<FRAME SRC=left.html NAME=left SCROLLING=yes NORESIZE>

<FRAMESET ROWS=70,* BORDER=0>

<FRAME SRC=top.html NAME=top SCROLLING=auto NORESIZE>
<FRAME SRC=content.html NAME=content SCROLLING=yes>

</FRAMESET>
</FRAMESET>
Natijada quyidagi nomlardagi freymlar vjudga keladi left, top va content. Endi,chap freymdagi havoladan asosiy freymda hujjatni ocxilishi uchun <A> tegining TARGET parametrini content teng qilib belgilash lozim, ya’ni:
<A HREF=1.html TARGET=content>1-Punkt </A>
Agarda ko’rgan bo’lsangiz ba’zi bir internet sahifalarda tepasidagi bir qism oyna o’zgarmas shakilda ko’rsatib turadi, yoki esa yon tarafdagilar, agarda
qandaydir linkni bossangiz unda sizga ekranning o’ng tarafiga kerakli ma’lumotni ochib beradi. Bu sahifa FRAME orqali tuzilgandir.
Misol:
(main.htm)
<HTML>
<HEAD>
<TITLE>Framelar misoli</TITLE>
</HEAD>
<FRAMESET COLS="30 %, *">
<FRAME SRC="leftframe.htm">
<FRAME SRC="rightframe.htm">
</FRAMESET>
</HTML>
(leftframe.htm)
<HTML>
<BODY>
<H2>bu bizning chap oynamiz</H2>
</BODY>
</HTML>
(rightframe.htm)
<HTML>
<BODY>
<H1>bu bizning o’ng oynamiz</H1>
</BODY>
</HTML>
Bu yerda biz, <FRAMESET> tegini ichiga olgan holda <FRAME> tegini ishlatdik.
Bu har doim shunday bo’lishi kerak.
COLS - bu yerda siz kolonkalar qanday oynani bo’lib olishini berasiz. Bizning misolda 30% oynani chap tarafdagi frame oladi, qolgan qismini esa o’ng taraf.
Bizning bir oynamiz uch HTM file’lardan iboratdir, birinchisi asosiy oynamiz, u ikki leftframe va rightframe file’larini yuklaydi. Endi keling chap tarafimizga bitta link qo’yaylik va yengi sahifani shu link’ga bosganda o’ng tarafda ochsin:
Misol:
(main.htm)
<HTML>
<HEAD>
<TITLE>Framelar misoli</TITLE>
</HEAD>
<FRAMESET COLS="30 %, *">
<FRAME SRC="leftframe.htm" >
<FRAME SRC="rightframe.htm" NAME=ik_oyna >
</FRAMESET>
</HTML>
(leftframe.htm)
<HTML>
<BODY>
<H2>bu bizning chap oynamiz</H2>
<A HREF=ikkinchi.htm target=ik_oyna>Ikkinchi oynaga yangi oynani ochish</A>
</BODY>
</HTML>
(rightframe.htm)
<HTML>
<BODY>
<H1>bu bizning o’ng oynamiz</H1>
</BODY>
</HTML>
(ikkinchi.htm)
<HTML>
<BODY>
<H1>Ikkinchi oynamiz ham ocxildi</H1>
</BODY>
</HTML>
Va agarda chap oynadagi linkni bossak unda bizning o’ng oynamizga ikkinchi.htm
sahifasi ochiladi.
<NOFRAME> tegi agarda sizning Web Browseringiz FRAME tegini ishlatmaydigan bo’lsa unda shu tegning orasidagi ma’lumot ekranga chiqadi.
Endi agarda yana ham mukammalroq bir misolni ko’rib chiqmoqchi bo’lsak unda quyidagi misolni qarang va o’zingiz mulohaza qilib ko’ring.
Misol
<HTML>
<FRAMESET ROWS="*,*">
<NOFRAMES>
<H1>Web Browser FRAME tegini ko’rsatmas ekan</H1>
</NOFRAMES>
<FRAMESET COLS="70%,30%">
<FRAME SRC="link1.htm">
<FRAME SRC="link2.htm">
</FRAMESET>
<FRAMESET COLS="40%,40%,*">
<FRAME SRC="link3.htm">
<FRAME SRC="link4.htm">
<FRAME SRC="link5.htm">
</FRAMESET>
</FRAMESET>
</HTML>
Va link1.htm link2.htm, link3.htm, link4.htm, link5.htm file’larini o’zingiz hohlagan shakilda yarating. Va ishlatib ko’ring. Ekraningiz shu kabi ko’rinishi kerakdir.

Share