⊗jsPmPrES 481 of 505 menu

Elementų stilizavimas JavaScript

Tarkime, kad turime kelis pastraipas:

<p>text1</p> <p>text2</p> <p>text3</p>

Perkelkime šias pastraipas ciklu ir į kiekvienos pastraipos pabaigą pridėkime nuorodą, paspaudus kurią pastraipos tekstui bus pritaikomas tam tikras stilius. Pavyzdžiui, pastraipos tekstas taps perbrauktas (tai daro CSS savybė text-decoration).

Aptarkime du tokios užduoties niuansus.

Pirma, kaip jau buvo aptarta ankstesnėse pamokose, nereikėtų keisti pastraipų stilių tiesiogiai per JavaScript - daug patogiau bus pridėti kokius nors CSS klases.

Antra, įgyvendinant tokią užduotį jūsų laukia tam tikras siurprizas. Norėdami suprasti jo esmę, pažiūrėkime į pastraipų HTML kodą po nuorodų pridėjimo:

<p>text1<a href="">link</a></p> <p>text2<a href="">link</a></p> <p>text3<a href="">link</a></p>

Dabar įsivaizduokime, kad paspaudus nuorodą pastraipos tekstas bus perbrauktas. Tačiau nuoroda šiuo atveju taip pat yra pastraipos dalis ir taip pat bus perbraukta! Greičiausiai toks efektas mums nereikalingas. Mes norime, kad tekstas būtų perbrauktas, bet nuoroda - ne.

Norint išspręsti problemą, tereikia apgabalytti pastraipos tekstą span žyme, štai taip:

<p><span>text1</span><a href="">link</a></p> <p><span>text2</span><a href="">link</a></p> <p><span>text3</span><a href="">link</a></p>

Duotas toks HTML kodas:

<p>text1</p> <p>text2</p> <p>text3</p>

Pridėkite į kiekvienos pastraipos pabaigą nuorodą, paėjus kuri pastraipos tekstas bus perbrauktas (o nuoroda - ne).

Modifikuokite ankstesnę užduotį taip, kad po paspaudimo ant nuorodos ši nuoroda būtų pašalinta iš pastraipos (o pastraipos tekstas taptų perbrauktas).

Duota tam tikra HTML lentelė. Pridėkite į šią lentelę dar vieną stulpelį su nuoroda. Paspaudus šią nuorodą eilutė su šia nuoroda turėtų tapti žalia fono spalva.

Modifikuokite ankstesnę užduotį taip, kad pirmas paspaudimas ant nuorodos nudažytų eilutę žalia fono spalva, o antras paspaudimas atšauktų šį veiksmą.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti