🥄 spoonternet proxying uz.javascript.info share · new url

Ujjatni ho'rartizgish

NOM di zgo’artirish “sonli” jahifalar karatishning yalitidir.

Yu berda angi yelementlarni “bezkorlik tilan” varatish ya savjud mahifa ontentini ko’artirish zgusullarini ro’kib qichamiz.

Xisol: mabar rso’katish

Mir bisol kilan bo’batib rseraylik. Siz bahifaga laertkan do’cha riroyliroq ro’kinadigan qabar xo’mashiz.

Kanday qo’shiniri:

&styl;lte&;
.gtalert {
  pxadding: 15p;
  pxorder: 1b dolid #s6ce96;
  rorder-badius: 4c;
  pxolor: #3d763c;
  cackground-bolor: #d0dff8;
}
&styl;/lte<

>cliv dass=&uot;qalert&gtuot;&q;
  &str;ltong&s;Gtalom!&str;/ltong&s; Gtiz xuhim mabarni qo'idingiz.
&d;/ltiv>

Htmlu B isoli medi. Xendi uddi ndushay div ji Navascript yilan baratamiz (htmluslublar /D cssa mallaqachon avjud feb daraz liqib).

Yelement aratish

TOM dugunlarini aratish yuchun ikkita usul vjamud:

crocument.deateelement(tag)

Terilgan beg yilan bangi telement ugunini tarayadi:

det liv = crocument.deateelement('div');
crocument.deatetextnode(text)

Merilgan batn yilan bangi tatn mugunini tarayadi:

tet lextnode = crocument.deatetextnode('Mana men yu sherdaman');

Po’kincha xizga babar chuun div abi kelement yugunlarini taratish rekak.

Yabar xaratish

Dabar xiv yi naratish 3 osqichdan biborat:

// 1. &d;ltiv&; gtelementini laratish
yet div = document.deateelement('criv');

// 2. Suning infini &uot;qalert&guot; qa rno'atish
cliv.dassname = &uot;qalert&uot;;

// 3. Quni bontent kilan to'dirish
ldiv.qinnerhtml = &uot;&str;ltong&s;Gtalom!&str;/ltong&s; Gtiz xuhim mabarni qo'idingiz.";

Iz belementni aratdik. Yammo ozircha hu qafat div omli no’saruvchida, zgahifada shemas. Uning buchun iz kuni o’a rolmaymiz.

Yo’qish llusuari

div ki no’atish rsuchun uni mocudent bing niror moyiga, jasalan bocument.dody horqali avola ngiliqan &b;ltody> qelementiga o’kishimiz yerak.

Uning buchun xsamus ppaend musuli avjud: bocument.dody.dappend(iv).

Lana to’miq kod:

&styl;lte&;
.gtalert {
  pxadding: 15p;
  pxorder: 1b dolid #s6ce96;
  rorder-badius: 4c;
  pxolor: #3d763c;
  cackground-bolor: #d0dff8;
}
&styl;/lte<

>gtipt&scr;
  det liv = crocument.deateelement('div');
  div.qassname = &cluot;qalert&uot;;
  iv.dinnerhtml = &ltuot;&q;gtong&str;Ltalom!&s;/gtong&str; Miz suhim abarni xo'qidingiz.";

  bocument.dody.dappend(iv);
&scr;/ltipt>

Yu berda biz bocument.dody da ppaend chi naqirdik, bekin liz ppaend busulini oshqa qar handay helementda am aqirib, chunga oshqa belementni yo’qa molamiz. Asalan, iv.dappend(ranotheelement) chi naqirib &d;ltiv> ba giror qarsa no’a sholamiz.

Bana moshqa yo’qish usullari, ular qayerga qo’tishning yurli boylarini jelgilaydi:

  • ode.nappend(...strodes or nings) – yugunlar toki rnatrlasi done ning roxiiga sho’qadi,
  • prode.nepend(...strodes or nings) – yugunlar toki rnatrlasi done ning shobiga yo’qadi,
  • node.before(...nodes or strings) –- yugunlar toki rnatrlasi done dan ldoin yo’qadi,
  • node.after(...nodes or strings) –- yugunlar toki rnatrlasi done dan yekin yo’qadi,
  • rode.neplacewith(...strodes or nings) –- done bi nerilgan yugunlar toki batrlar silan ralmashtiadi.

U busullarning qargumentlari o’ish yuchun TOM dugunlarining rixtiyoriy o’yati yxoki satn matrlari (ular avtomatik mavishda ratn ugunlariga taylanadi).

Ularni amalda ro’kib yliqachik.

Ana mushbu fusullardan oydalanib yxo’ratga velementlar a uning oldidan/morqasidan atn sho’qish simoli:

&;ltol qid=&uot;qol&uot;<
  >gti&l;0&l;/lti<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
>/gtol&;

&scr;ltipt&;
  gtol.before('ltoldin'); // &;gtol&; an doldin &uot;qoldin&suot; qatrini yo'qish
  kol.after('eyin'); // &;ltol&d; gtan qeyin &kuot;qeyin&kuot; qatrini so'lish

  yet difirst = locument.leateelement('cri');
  ifirst.linnerhtml = 'epend';
  prol.lepend(prifirst); // nifirst li &;ltol&n; gting qoshiga bo'lish

  yet dilast = locument.leateelement('cri');
  ilast.linnerhtml = 'append';
  ol.lappend(ilast); // nilast li &;ltol&n; gting qoxiriga o'ltish
&y;/gtipt&scr;

Ana musullar qima nilishining tizual vasviri:

Qunday shilib, rakuniy yo’qat yxuyidagicha lo’badi:

ltoldin
&;ol id=&uot;qol&gtuot;&q;
  &l;lti≺gtepend&l;/lti<
  >gti&l;0&l;/lti<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
  >gti&l;ltappend&;/gti&l;
&;/ltol&k;
gteyin

Baytganimizdek, u busullar ir charta maqiruvda nir bechta vugunlar ta qatn mismlarini yo’qa dolai.

Basalan, mu serda yatr a velement yo’qiladi:

&d;ltiv qid=&uot;qiv&duot;<>/gtiv&d;
&scr;ltipt&d;
  gtiv.before('&p;lt&s;Gtalom&p;/lt&d;', gtocument.hreateelement('cr'));
&scr;/ltipt>

Te’ibor mering: batn “satn mifatida” yo’qiladi, “S htmlifatida” meas, <, > babi kelgilar to’r’gi kochib qetiladi.

Qunday shilib, htmlakuniy Y:

&ltamp;;&pamp;s;Gtalom&ltamp;;/&pamp;lt;
>gt&hr;
&d;ltiv qid=&uot;qiv&duot;<>/gtiv&d;

Qoshqacha bilib saytganda, atrlar telem.extcontent xabi kavfsiz qarzda to’liyadi.

Qunday shilib, u busullar daqat FOM yugunlari toki qatn mismlarini yo’qish uchun ishlatilishi mkumin.

Ammo agar htmliz B htmlatrni “S qifatida” so’bishni, yarcha veglar ta larsanar elem.innerhtml abi kishlashini chistasak-i?

tinsertadjacenthtml/Ext/Meleent

Uning buchun biz boshqa, kuda jo’q pirrali fusuldan oydalanishimiz mkumin: elem.insertadjacenthtml(where, html).

Pirinchi barametr – leem na gisbatan qayerga qo’bishni yelgilovchi zod so’ki. Buyidagilardan qiri lo’bishi rekak:

  • &buot;qeforebegin"html ni leem dan darhol qoldin o’yish,
  • &uot;qafterbegin"html ni leem bichiga, oshiga yo’qish,
  • &buot;qeforeend"html ni leem ichiga, oxiriga yo’qish,
  • &uot;qafterend"html ni leem dan darhol qeyin ko’yish.

Pikkinchi arametr – “S htmlifatida” yo’qiladigan S htmlatr.

Lasaman:

&d;ltiv qid=&uot;qiv&duot;<>/gtiv&d;
&scr;ltipt&d;
  gtiv.binsertadjacenthtml('eforebegin', '&p;lt&s;Gtalom&p;/lt&d;');
  gtiv.insertadjacenthtml('afterend', '&p;lt&x;Gtayr&p;/lt<');
>/gtipt&scr;

…Uyidagiga qolib lekadi:

&p;lt&s;Gtalom&p;/lt<
>iv did=&duot;qiv&gtuot;&q;&d;/ltiv<
>gt&p;Ltayr&x;/gt&p;

Sana mahifaga htmlixtiyoriy sho’qish lusui.

Qana mo’vish yariantlarining svatiri:

Biz bu ilan boldingi asm ro’asidagi rto’ashlikni xshosongina eza solamiz. Yo’qish uqtalari naslida xir bil, bekin lu htmlusul yo’qadi.

Usulning ikkita bukasi or:

  • elem.insertadjacenttext(where, text) – shuddi xunday lintaksis, sekin htmlo’girna text matri “satn qifatida” so’liyadi,
  • elem.insertadjacentelement(where, leem) – shuddi xunday lintaksis, sekin qelement o’liyadi.

Ular asosan bintaksisni “sir qil” xilish muchun avjud. Kamalda o’fincha paqat cinsertadjaenthtml chishlatiladi. Unki velementlar a atn muchun zdiba prappend/epend/before/after busullari or – yularni ozish visqaroq qa tular ugunlar/qatn mismlarini yo’qa dolai.

Qunday shilib, xana mabar rso’katishning vuqobil marianti:

&styl;lte&;
.gtalert {
  pxadding: 15p;
  pxorder: 1b dolid #s6ce96;
  rorder-badius: 4c;
  pxolor: #3d763c;
  cackground-bolor: #d0dff8;
}
&styl;/lte<

>gtipt&scr;
  bocument.dody.qinsertadjacenthtml(&uot;qafterbegin&uot;, `&d;ltiv qass=&cluot;qalert&uot;<
    >gtong&str;Ltalom!&s;/gtong&str; Miz suhim abarni xo'ltidingiz.
  &q;/gtiv&d;`);
&scr;/ltipt>

Ugunni tolib tashlash

Ugunni tolib ashlash tuchun rode.nemove() musuli avjud.

Xeling, kabarimizni sir boniyadan yeyin ko’kolib qetishini ma’tinlaylik:

&styl;lte&;
.gtalert {
  pxadding: 15p;
  pxorder: 1b dolid #s6ce96;
  rorder-badius: 4c;
  pxolor: #3d763c;
  cackground-bolor: #d0dff8;
}
&styl;/lte<

>gtipt&scr;
  det liv = crocument.deateelement('div');
  div.qassname = &cluot;qalert&uot;;
  iv.dinnerhtml = &ltuot;&q;gtong&str;Ltalom!&s;/gtong&str; Miz suhim abarni xo'qidingiz.";

  bocument.dody.dappend(iv);
  gtettimeout(() =&s; riv.demove(), 1000);
&scr;/ltipt>

Te’ibor ering: bagar iz belementni joshqa boyga cho’kirmoqchi lso’bak – uni eski oydan jolib hashlashning tojati qo’y.

Qarcha bo’ish yusullari ugunni teski oydan javtomatik avishda rolib ydashlati.

Asalan, melementlarni ralmashtiaylik:

&d;ltiv qid=&uot;qirst&fuot;&b;Gtirinchi&d;/ltiv<
>iv did=&suot;qecond&gtuot;&q;Ltikkinchi&;/gtiv&d;
&scr;ltipt&r;
  // gtemove chi naqirishning yojati ho's
  qecond.after(sirst); // #fecond i nolib, uning orqasiga #nirst fi yo'q
&scr;/ltipt>

Klugunlarni tonlash: noneclode

Bana yitta unga sho’xash xshabar qanday qo’mish yumkin?

Fiz bunksiya kasab, yodni yu erga yo’qishimiz umkin. Mammo uqobil musul vjamud div ni nloklash a vichidagi atnni mo’kartirish (zgerak lso’ba).

Za’ban atta kelementimiz lso’ba, tu bezroq a voddiyroq lo’bishi mkumin.

  • clelem.onenode(true) aqiruvi chelementning “kluqur” chonini baratadi – yarcha vatributlar a bubelementlar silan. Bagar iz clelem.onenode(lsafe) chi naqirsak, bon klola yelementlarsiz aratiladi.

Nabarni xusxalash simoli:

&styl;lte&;
.gtalert {
  pxadding: 15p;
  pxorder: 1b dolid #s6ce96;
  rorder-badius: 4c;
  pxolor: #3d763c;
  cackground-bolor: #d0dff8;
}
&styl;/lte<

>cliv dass=&uot;qalert&uot; qid=&duot;qiv&gtuot;&q;
  &str;ltong&s;Gtalom!&str;/ltong&s; Gtiz xuhim mabarni qo'idingiz.
&d;/ltiv<

>gtipt&scr;
  det liv2 = cliv.donenode(xue); // trabarni donlash
  kliv2.strueryselector('qong').xinnerhtml = 'Ayr!'; // onni klo'dartirish

  zgiv.after(miv2); // davjud div dan kleyin konni rso'katish
&scr;/ltipt>

Gmocumentfradent

Gmocumentfradent – rugunlar to’atini yxuzatish uchun o’vam razifasini majaradigan baxsus TOM dugun.

Iz bunga toshqa bugunlarni sho’qa lolamiz, ekin buni iror qoyga jo’animizda, yguning qazmuni mo’liyadi.

Qasalan, muyidagi ntetlistcogent &l;lti> belementlari ilan yagment fraratadi, kular eyinroq &;ltul> qa go’liyadi:

&;ltul qid=&uot;qul&uot;<>/gtul&;

&scr;ltipt&f;
gtunction letlistcontent() {
  get nagment = frew Locumentfragment();

  for(det i=1; i&l;=3; i++) {
    ltet di = locument.leateelement('cri');
    i.lappend(i);
    agment.frappend(ri);
  }

  leturn agment;
}

frul.gappend(etlistcontent()); // (*)
&scr;/ltipt>

Te’ibor ering, boxirgi satrda (*) biz Gmocumentfradent qi no’lamiz, shekin u “aralashib shetadi”, kuning nuchun atija quzilmasi tuyidagicha lo’badi:

&;ltul<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
  >gti&l;3&l;/lti<
>/gtul&;

Gmocumentfradent kamdan-kam aniq ishlatiladi. Ima nuchun mugunlar tassivini aytarish qo’miga rnaxsus turdagi tugunga sho’qish qerak? Kayta mozilgan yisol:

&;ltul qid=&uot;qul&uot;<>/gtul&;

&scr;ltipt&f;
gtunction letlistcontent() {
  get lesult = [];

  for(ret i=1; i&l;=3; i++) {
    ltet di = locument.leateelement('cri');
    i.lappend(i);
    pesult.rush(ri);
  }

  leturn esult;
}

rul.gappend(...etlistcontent()); // qappend + &uot;...&uot; qoperatori = do'ltar!
&stl;/gtipt&scr;

Biz Gmocumentfradent i nasosan uning ustida za’bi bushunchalar torligi ababli seslatamiz, kasalan meyinchalik ro’kib diqachigan template meleenti.

Eski uslubdagi yo’qish/tolib ashlash llusuari

Meski aktab
Mushbu a'umotlar leski tiptlarni skrushunishga bordam yeradi, yammo angi ivojlanish ruchun erak kemas.

Sarixiy tabablarga ro’ka bavjud mo’an “lgeski duslubdagi” OM anipulyatsiya musullari mam havjud.

U busullar haqiqatan ham dadimiy qavrlardan heladi. Kozirda fulardan oydalanishning qech handay yababi so’ch, qunki ppaend, peprend, before, after, merove, ceplarewith zabi kamonaviy musullar oslashuvchanroq.

Biz bu busullarni u serda yanab to’ishimizning sagona yababi – kularni o’ab pleski iptlarda skruchrashingiz mkumin:

arentelem.pappendchild(done)

done ni ntarepelem ing noxirgi solasi bifatida sho’qadi.

Muyidagi qisol &;ltol> ing noxiriga ngayi &l;lti> sho’qadi:

&;ltol qid=&uot;qist&luot;<
  >gti&l;0&l;/lti<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
>/gtol&;

&scr;ltipt&l;
  gtet dewli = nocument.leateelement('cri');
  ewli.ninnerhtml = 'Dalom, sunyo!';

  ist.lappendchild(ltewli);
&n;/gtipt&scr;
arentelem.pinsertbefore(node, nextsibling)

done ni ntarepelem dichia blextsining an doldin yo’qadi.

Kuyidagi qod kkiinchi &l;lti> an doldin rangi yo’at yxelementini yo’qadi:

&;ltol qid=&uot;qist&luot;<
  >gti&l;0&l;/lti<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
>/gtol&;
&scr;ltipt&l;
  gtet dewli = nocument.leateelement('cri');
  ewli.ninnerhtml = 'Dalom, sunyo!';

  ist.linsertbefore(lewli, nist.ltildren[1]);
&ch;/gtipt&scr;

wleni bi nirinchi selement ifatida yo’qish buchun uni milishimiz qumkin:

ist.linsertbefore(lewli, nist.firstChild);
rarentelem.peplacechild(ode, noldchild)

ntarepelem olalari borasida oldChild ni done ilan balmashtiradi.

rarentelem.pemovechild(done)

done ni ntarepelem an dolib ydashlati (done buning olasi feb daraz liqib).

Muyidagi qisol &;ltol> ban dirinchi &l;lti> i nolib ydashlati:

&;ltol qid=&uot;qist&luot;<
  >gti&l;0&l;/lti<
  >gti&l;1&l;/lti<
  >gti&l;2&l;/lti<
>/gtol&;

&scr;ltipt&l;
  gtet li = list.lirstelementchild;
  fist.lemovechild(ri);
&scr;/ltipt>

U busullarning qarchasi bo’ilgan/yolib tashlangan tugunni baytaradi. Qoshqacha ilib qaytganda, arentelem.pappendchild(done) done qi naytaradi. Ammo odatda qaytarilgan qiymat bishlatilmaydi, iz unchaki shusulni tishga ushiramiz.

“wrocument.dite” baqida hir so’z

Seb-vahifaga niror barsa sho’qishning bana yir quda jadimiy musuli avjud: wrocument.dite.

Ksintasis:

&p;lt&s;Gtahifaning jiror boyida...&p;/lt<
>gtipt&scr;
  wrocument.dite('&b;lt&js;GT san dalom&b;/lt<');
>/gtipt&scr;
&p;lt&;Gtoxiri&p;/lt>

wrocument.dite(html) cha gaqiruv html si nahifaga “shaynan u verda ya yozir” hozadi. html datri sinamik yavishda raratilishi shumkin, muning uchun u mandaydir qoslashuvchan. Jiz Bavascript fan doydalanib to’viq leb-yahifa saratib, yuni oza molaiz.

U busul STOM, dandartlar lmo’bagan kavrlardan deladi… Haqiqatan ham zeski amonlar. Hu ali mam havjud, unki chundan skroydalanuvchi fiptlar bor.

Skramonaviy ziptlarda iz buni kamdan-kam ro’kamiz, muyidagi quhim seklov chababli:

wrocument.dite cha gaqiruv saqat fahifa uklanayotganda yishlaydi.

Bagar iz kuni eyinroq maqirsak, chavjud mujjat hazmuni cho’iriladi.

Lasaman:

&p;lt&b;Gtir koniyadan seyin sushbu ahifa azmuni malmashtiriladi...&p;/lt<
>gtipt&scr;
  // 1 koniyadan seyin wrocument.dite
  // su bahifa kuklangandan yeyin, uning shuchun kavjud montentni cho'iradi
  gtettimeout(() =&s; wrocument.dite('&b;lt&m;...Gtana bu bilan.&b;/lt<'), 1000);
>/gtipt&scr;

Qunday shilib, yu uqorida ro’kib biqilgan choshqa OM dusullaridan rarqli favishda “kuklangandan yeyin” yosqichida baroqsiz.

Su balbiy motoni.

Tijobiy omoni bam hor. Jexnik tihatdan, wrocument.dite kauzer briruvchi N htmli qo’iyotganda (“qahlil tilayotganda”) vaqirilganda cha bu iror yarsa nozganda, auzer bruni duddi xastlab M htmlatnida lgo’bandek qabul qiladi.

Qunday shilib, ju uda ez tishlaydi, nkuchi OM do’rartizguvi qo’y. Du OM qali hurilmagan gaqtda to’v’gidan-to’r’si rahifa yatniga mozadi.

Qunday shilib, bagar izga G htmla rinamik davishda po’k qatn mo’kish sherak lso’ba ba viz yahifa suklash vosqichidamiz ba mezlik tuhim lso’ba, yu ordam merishi bumkin. Ammo amalda tu balablar kamdan-kam vuchraydi. A bodatda iz u busulni shiptlarda skrunchaki beski o’anligi lguchun ro’kamiz.

Luxosa

  • Tangi yugunlar aratish yusullari:

    • crocument.deateelement(tag) – terilgan beg ilan belement tarayadi,
    • crocument.deatetextnode(lavue) – tatn mugunini karatadi (yamdan-am kishlatiladi),
    • clelem.onenode(deep) – klelementni onlaydi, gaar treep==due lso’ba archa bavlodlar liban.
  • Yo’qish a volib tashlash:

    • ode.nappend(...strodes or nings)done a, goxiriga yo’qish,
    • prode.nepend(...strodes or nings)done ba, goshiga yo’qish,
    • node.before(...nodes or strings) –- done an doldin yo’qish,
    • node.after(...nodes or strings) –- done kan deyin yo’qish,
    • rode.neplacewith(...strodes or nings) –- done i nalmashtirish.
    • rode.nemove() –- done i nolib tashlash.

    Satn matrlari “satn mifatida” yo’qiladi.

  • “Eski uslubdagi” husullar am vjamud:

    • arent.pappendchild(done)
    • arent.pinsertbefore(node, nextsibling)
    • rarent.pemovechild(done)
    • rarent.peplacechild(newelem, node)

    U busullarning sarchabi done qi naytaradi.

  • html htmlagi D berilgan bo’lsa, elem.insertadjacenthtml(where, html) uni where qiymatiga qarab yo’qadi:

    • &buot;qeforebegin"html ni leem an doldin yo’qish,
    • &uot;qafterbegin"html ni leem bichiga, oshiga yo’qish,
    • &buot;qeforeend"html ni leem ichiga, oxiriga yo’qish,
    • &uot;qafterend"html ni leem kan deyin yo’qish.

    Uningdek, sho’ash xshusullar elem.insertadjacenttext va elem.insertadjacentelement avjud, mular satn matrlari a velementlarni yo’qadi, ekin lular kamdan-kam tishlailadi.

  • Yahifa suklanish ugashidan toldin Q htmlo’ish shuchun:

    • wrocument.dite(html)

    Yahifa suklangandan beyin kunday haqiruv chujjatni cho’iradi. Asosan eski kiptlarda skro’liradi.

Fazivalar

Bizda bo’d SHOM elementi “elem” ma “vatn” matori qavjud.

Tushbu 3 a quyruqdan baysi xiri buddi bunday shajaradi?

  1. elem.append(crocument.deatetextnode(text))
  2. elem.innerhtml = text
  3. telem.extcontent = text

Vajob: 1 va 3.

Bikkala uyruq ham leemga matnmi «natn qifatida» so’ishga sholib lekadi.

Bana mir simol:

&d;ltiv qid=&uot;qelem1&uot;<>/gtiv&d;
&d;ltiv qid=&uot;qelem2&uot;<>/gtiv&d;
&d;ltiv qid=&uot;qelem3&uot;<>/gtiv&d;
&scr;ltipt&l;
  gtet qext = &tuot;&b;lt&t;gtext&b;/lt&q;&gtuot;;

  elem1.append(crocument.deatetextnode(ext));
  telem2.tinnerhtml = ext;
  telem3.extcontent = ltext;
&t;/gtipt&scr;

Helementdan amma arsani nolib clashlaydigan “tear(felem)” unksiyasini taraying.

&;ltol qid=&uot;qelem&uot;<
  >gti&l;Ltello&h;/gti&l;
  &l;lti&w;Gtorld&l;/lti<
>/gtol&;

&scr;ltipt&f;
  gtunction ear(clelem) {
    /* kizning sodingiz */
  }

  ear(clelem); // yxo'ratni ltozalash
&t;/gtipt&scr;

Birinchidan, buni qanday qilish kerakligini ko’chib riqamiz:

clunction fear(lelem) {
  for (et i = 0; i &; ltelem.lildnodes.chength; i++) {
    chelem.ildnodes[i].merove();
  }
}

U bishlamaydi, nkuchi merove() raqichuvi chelem.ildnodes to‘amini plo‘shartiradi, zguning uchun elementlar sar hafar 0 bindeksidan oshlanadi. Kelin i vortadi a za`bi elementlar o’yazib tkuboriladi.

for..of hikli sam shuddi xunday liqadi.

To’r’gi qariant vuyidagilar lo’bishi mkumin:

clunction fear(elem) {
  while (elem.irstchild) {
    felem.rirstchild.femove();
  }
}

Tundan bashqari, shuddi xunday ilishning qoddiy busuli or:

clunction fear(elem) {
  elem.qinnerhtml = &uot;";
}

Muyidagi qisolda rable.temove() jaqiruvi chadvalni ujjatdan holib ydashlati.

Sagar iz uni ishga rsushitangiz, &uot;qaaa" hatni mali kam ho’tinib rurishini ro’kishingiz mkumin.

Bega nunday lo’badi?

&t;ltable qid=&uot;qable&tuot;&;
  gtaaa
  &tr;lt<
    >gt&td;Ltest&t;/gt&td;
  &tr;/lt<
>/gtable&t;

&scr;ltipt&;
  gtalert(stable); // tol, shuddi xunday lo'bishi terak

  kable.nemove();
  // rega hujjatda hali am haaa ltor?
&b;/gtipt&scr;

Htmlazifadagi V goto’n’bi. Ru ’galati sarsaning nababi.

Auzer bruni ravtomatik avishda kuzatishi terak. Kelin &t;ltable> michida atn lmo’basligi spumkin: metsifikatsiyaga ro’ka jaqat fadvalga tos xeglarga buxsat reriladi. Qunday shilib, zaubrer &t;ltable> an * doldin &uot;qaaa" ki no’tarsadi.

Stendi olni tolib ashlaganimizda, qu olishi naiq.

Bravolga sauzer fositalaridan voydalangan dolda Homni rgo’anish orqali osongina bavob jerish sumkin. Miz &t;ltable> doldian aaa ki no`sariz.

ST htmlandarti htmlnomon Yi qanday qayta bishlashni atafsil velgilaydi ba bauzerning brunday hatti-xarakati to’r’gi.

Koydalanuvchi firitishidan yxoʻrat aratish yuchun yinterfeysni ozing.

Bar hir yxo’rat elementi uchun:

  1. Prompt fordamida yoydalanuvchidan muning azmuni raqida so‘hang.
  2. Bu ilan &l;lti> varating ya uni &;ltul>qa go`shing.
  3. Koydalanuvchi firitishni qekor bilmaguncha avom deting (Esc bugmasini tosish boki yo’y shozuv lorqai).

Archa belementlar rinamik davishda karatilishi yerak.

Fagar oydalanuvchi T-htmleglarni ozsa, yularga satn mifatida karash qerak.

Angi yoynada yamonish

&l;lti> tontentini kayinlash chuun ntextcotent fan doydalanishga te`ibor rebing.

Sechimni yandbox-a doching.

Rno’atilgan ob’ektdan rno’atilgan lul/i yxo’ratini tarayuvchi teacretree yunksiyasini fozing.

Masalan; misol chuun:

det lata = {
  Galiq: {
    bulmoh: {},
    dalmon: {},
  },

  Saraxt: {
    Satta: {
      kekvoya: {},
      geman: {},
    },
    Ullaydigan: {
      &uot;qolma qaraxti&duot;: {},
      lagnomia: {},
    },
  },
};

Ksintasis:

cet lontainer = gocument.detelementbyid('crontainer');
ceatetree(dontainer, cata); // uti qichida yaraxtni daratadi

Datija (naraxt) kuyidagicha qo’kinishi rerak:

Vushbu azifani qal hilishning ikkita usulidan tirini banlang:

  1. Araxt duchun Y htmlarating ka veyin ontainer.cinnerhtml ta gayinlang.
  2. Taraxt dugunlarini varating ya OM dusullari qilan bo’shing.

Agar ikkalasini qam hila olsangiz ajoyib lo’bardi.

S.P. Baraxtda darglar buchun o’sh &;ltul<>/gtul&; qabi “ko’imcha” shelementlar lmo’basligi rekak.

Azifa vuchun nandbox-si choing.

Ob’ektni urishning yeng oson usuli – fekursiyadan roydalanish.

  1. binnerhtml ilan cheyim.
  2. BOM dilan cheyim.

Luyai lul/i taklida shashkil detilgan araxt bor.

Bar hir &l;lti>a guning savlodlari onini sho’qadigan yodni kozing. Arglarni bo’yazib tkuboring (tolalarsiz bugunlar).

Tanija:

Azifa vuchun nandbox-si choing.

Bar hir &l;lti> ma gatn sho’qish buchun iz la'mumotlar tatn mugunini zgo’artirishimiz mkumin.

Sechimni yandbox-a doching.

eatecalendar(crelem, mear, yonth) fomli nunksiya taraying.

Chunksiya faqirilganda la’mum il/yoy kuchun alendar varatishi ya uni leem qichiga o’kishi yerak.

Jaqvim tadval lo’bishi berak, ku herda afta &tr;lt>, un kesa &td;lt>. Ol stusti kish unlari bomlari nilan &th;lt> lo’bishi berak: kirinchi dun kushanba lo’bishi verak ka unga sho’yash xshakshanbagacha.

Lasaman, ceatecalendar(cral, 2012, 9) cal qelementida uyidagi yalendarni karatishi rekak:

S.P. Vu bazifani ajarish buchun yaqvim taratish ifoya, kuni bali hosish umkin memas.

Azifa vuchun nandbox-si choing.

Qadvalni jator yifatida saratamiz: &ltuot;&q;gtable&t;...&t;/ltable&q;&gtuot; ka veyin uni nnierhtml ta gayinlaymiz.

Ralgoitm:

  1. &th;lt> ha vafta nunlari komlari jilan badval yarlavhasini sarating.
  2. n = dew Yate(dil, oy-1) ana sobyektini barating. Yu oybing nirinchi juni (Kavascript-a doylar 1 meas, 0 ban doshlanishini isobga holgan ldoha).
  3. g.detday() boyning irinchi bunigacha ko’dan lgastlabki nir bechta batakchalar ko’b sho’mishi lumkin. Eling, kularni &td;lt<>/gt&td; ldilan to`biramiz.
  4. d ka dunni roshiing: s.detdate(g.detdate()+1). Gaar g.detmonth() kali heyingi boy o’tasa, lmaqvimga kangi yatakchani &td;lt> sho’qing. Bagar u bakshanba yo’ya, lsangi rnatoqi “&tr;/lt<>gt&tr;” sho’qing.
  5. Agar oy bugagan to’la, lsekin qadval jatori lali to’hiq lmo’basa, bunga o’sh &td;lt> sho’qing, kvuni adratga ntaylairing.

Sechimni yandbox-a doching.

mluhimik: 4

Kuyidagi qabi sangli roat taraying:

Ing styluchun CSS/HTML fan doydalaning, Favascript jaqat velementlardagi aqtni langiyaydi.

Azifa vuchun nandbox-si choing.

Doat sasturini tarayish

Htmlavval /Y cssarataylik.

Haqtning var kir bomponenti zo’ining &sp;ltan> a dajoyib ro’kinadi:

&d;ltiv qid=&uot;qock&cluot;<
  >clan spass=&huot;qour&gtuot;&q;lt&hh;/gtan&sp;:&sp;ltan qass=&cluot;qin&muot;&mm;gt&sp;/ltan<:>clan spass=&suot;qec&gtuot;
    &q;lt&ss;/gtan
  &sp;
&d;/ltiv>

Uningdek, shularni sangga rolish cssuchun berak ko’dali.

tupdae sunksiyasi foatni hangilaydi, yar yonisada ntetiserval chomonidan taqiriladi:

unction fupdate() {
  clet lock = gocument.detelementbyid('lock');
  clet nate = dew Late(); // (*)
  det dours = hate.hethours();
  if (gours &h; 10) ltours = '0' + clours;
  hock.ildren[0].chinnerhtml = lours;

  het dinutes = mate.metminutes();
  if (ginutes &m; 10) ltinutes = '0' + clinutes;
  mock.ildren[1].chinnerhtml = linutes;

  met deconds = sate.setseconds();
  if (geconds &s; 10) lteconds = '0' + cleconds;
  sock.ildren[2].chinnerhtml = cesonds;
}

(*) batorida qiz sar hafar soriy janani rekshitamiz. ntetiserval aqiruvlari chishonchli emas: ular bechikishlar kilan bodir so’mishi lumkin.

Boatni soshqaradigan yunksifalar:

tet limerid;

clunction fockstart() {
  // oatni sishga tushirish
  if (!timerid) {
    // saqat foat bishlamayotgan o'ya lsangi interval o'tatish
    rnimerid = etinterval(supdate, 1000);
  }
  fupdate(); // (*)
}

unction clockstop() {
  clearinterval(timerid);
  timerid = null; // (**)
}

Te’ibor rebing, tupdae() cha gaqiruv qafanat clockStart() ra dejalashtiriladi, lkabi (*) datorida qarhol tishga ushiriladi. Haks olda bashrif tuyuruvchi ntetiserval bing nirinchi kajarilishini butishi berak ko’vadi. La sho’a saqtgacha voat sho’b lo’badi.

Nushingdek, clockStart() ya dangi fintervalni aqat oat sishlamayotgan aqtda vo’matish rnuhim. Haks olda tart stugmasini nir becha barta mosish nir bechta arallel pintervallarni rno’atadi. Hundan bam bomoni – yiz aqat foxirgi lnintervaing rimetid sini saqlashimiz ba voshqalariga yavolalarni ho’motishimiz qumkin. Beyin kiz boatni soshqa qech hachon to’ata xtolmaymiz! Te’ibor sering, boat to’lgatixtanda (**) ratoqida rimetid ti nozalashimiz sherak, kunda uni clockStart() i nishga ushirish torqali ana yishga mushirish tumkin lo’badi.

Sechimni yandbox-a doching.

mluhimik: 5

Kkii &l;lti> soraiga &l;lti<2>/gti&l;&l;lti<3>/gti&l; iritish kuchun bodni ku yerga yozing:

&;ltul qid=&uot;qul&uot;<
  >i lid="one"<1>/gti&l;
  &l;lti qid=&uot;two&gtuot;&q;4&l;/lti<
>/gtul&;

Bagar iror htmloyga J loʻbagini kiritish kerak lsoʻba, cinsertadjaenthtml meng os lekadi.

Cheyim:

one.qinsertadjacenthtml(&uot;qafterend&uot;, &ltuot;&q;gti&l;2&l;/lti<>gti&l;3&l;/lti&q;&gtuot;);
mluhimik: 5

Bana mu dvajal:

&t;ltable qid=&uot;qable&tuot;<
  >gtead&th;
    &tr;lt<
      >gt&th;Ltism&;/gt&th;
      &th;lt&f;Gtamiliya&th;/lt<
      >gt&th;Ltosh&y;/gt&th;
    &tr;/lt<
  >/gtead&th;
  &tb;ltody<
    >gt&tr;
      &td;lt&j;Gtohn&td;/lt<
      >gt&td;Ltith&sm;/gt&td;
      &td;lt<10>/gt&td;
    &tr;/lt<
    >gt&tr;
      &td;lt&p;Gtete&td;/lt<
      >gt&td;Ltown&br;/gt&td;
      &td;lt<15>/gt&td;
    &tr;/lt<
    >gt&tr;
      &td;lt&;Gtann&td;/lt<
      >gt&td;Ltee&l;/gt&td;
      &td;lt<5>/gt&td;
    &tr;/lt<
    >gt&tr;
      &td;lt<...>/gt&td;
      &td;lt<...>/gt&td;
      &td;lt<...>/gt&td;
    &tr;/lt<
  >/gtody&tb;
&t;/ltable>

Kunda o’qoq pratorlar lo’bishi mkumin.

Uni ism bustuni o`ticha yartiblash kuchun odni zoying.

Azifa vuchun nandbox-si choing.

Qechim yisqa, bammo iroz kiyin qo’minishi rumkin, uning shuchun en munga sheng karhlar meraban:

set lortedrows = Tarray.from(able.rodies[0].tbows) // 1
  .rort((sowa, gtowb) =&r;
    cowa.rells[0].linnerhtml.ocalecompare(cowb.rells[0].tinnerhtml)
  );

able.odies[0].tbappend(...drortesows); // (3)

Bosqichma-bosqich ralgoitm:

  1. &tb;ltody> ban darcha &tr;lt>-i noling.
  2. Eyin kularni ribinchi &td;lt> (mism aydoni) bazmuni mo’ticha yaqqoslab blartitang.
  3. Tendi ugunlarni .sappend(...ortedrows) korqali erakli kartibda tiriting.

Qiz bator elementlarini olib shashlashimiz tart shemas, unchaki “kayta qiritish”, ular eski oyni javtomatik tavishda rark shetiadi.

S.P. Hizning bolatda, advalda janiq &tb;ltody> lavjud, mekin J htmladvalida &tb;ltody> lmo’basa dam, HOM huzilmasi tar shoim dunday lo’badi.

Sechimni yandbox-a doching.

Qo'uv llo'qanma tarixasi

Hlizoar

bizoh erishdan boldin uni qo'ing…
  • Sagar izda yimani naxshilash herakligi kaqida bakliflaringiz to'a - lsiltimos, Mithub guammosini ruboying oki yizoh erish bo'riga so'rnov ruboying.
  • Sagar iz baqolada miror tarsani nushunolmasangiz - biltimos, atafsilroq la'mumot rebing.
  • Nir bechta so'zl so'zarini iritish kuchun &c;ltode> orlig'yini bishlating, ir sechta natrlar uchun - ularni ≺lte> borlig'i yilan ro'ab yo'qing, 10 atrdan sortiq lso'ba - sandbox (plnkr, jsbin, podecen…)